openapi: 3.0.0
info:
  title: V3 API
  description: >-
    This section documents the V3 Reporting API endpoints that provide access to
    comprehensive audit and journey data from ObservePoint. Use these endpoints
    to retrieve detailed reports, export data, manage alerts, and analyze web
    performance metrics from your ObservePoint scans.
  version: null
  contact:
    name: Observepoint
    url: https://www.observepoint.com/contact-us
tags:
  - name: web-audits
    x-displayName: Audit Run Data
    description: >-
      Retrieve audit run data including pages, cookies, geo-locations, network
      requests, JS variables and failures for web audit runs
  - name: page-details-report
    x-displayName: Page Details Report
    description: >-
      Detailed information about specific pages including tags, cookies, request
      logs, and console logs
  - name: page-summary-report
    x-displayName: Page Summary Report
    description: Page Summary report endpoints
  - name: audit-summary-report
    x-displayName: Audit Summary Report
    description: Audit Summary report endpoints
  - name: alert-summary-report
    x-displayName: Alert Summary Report
    description: Alert Summary report endpoints
  - name: rule-summary-report
    x-displayName: Rule Summary Report
    description: Rule Summary report endpoints
  - name: tag-inventory-report
    x-displayName: Tag Inventory Report
    description: Tag Inventory report endpoints
  - name: tag-health-report
    x-displayName: Tag Health Report
    description: Tag Health report endpoints
  - name: tag-duplicates-and-multiples-report
    x-displayName: Tag Duplicates and Multiples Report
    description: Tag Duplicates and Multiples report endpoints
  - name: variable-inventory-report
    x-displayName: Variable Inventory Report
    description: Variable Inventory report endpoints
  - name: cookie-inventory-report
    x-displayName: Cookie Inventory Report
    description: Cookie Inventory report endpoints
  - name: browser-logs-report
    x-displayName: Browser Logs Report
    description: Browser Logs report endpoints
  - name: file-changes-report
    x-displayName: File Changes Report
    description: File changes report endpoints
  - name: cookie-privacy-report
    x-displayName: Cookie Privacy report endpoints
    description: Cookie privacy report
  - name: tag-privacy-report
    x-displayName: Tag Privacy Report
    description: Tag privacy report endpoints
  - name: request-privacy-report
    x-displayName: Request Privacy Report
    description: Request Privacy report endpoints
  - name: exports
    x-displayName: Exports Center
    description: Access requested exports status/information
  - name: scheduled-exports
    x-displayName: Scheduled Exports
    description: Manage scheduled grid report data exports
  - name: audit-run-export
    x-displayName: Audit Run Export
    description: Export audit run data
  - name: web-journey-run-export
    x-displayName: Web Journey Run Export
    description: Export web journey run data
  - name: manual-journey-run-export
    x-displayName: Manual Journey Run Export
    description: Export manual journey run data
  - name: consent-category-export
    x-displayName: Consent Category Export
    description: Export consent category data
  - name: alerts
    x-displayName: Alerts
    description: Alert management and configuration
  - name: account-triggered-alerts
    x-displayName: Account's Triggered Alerts
    description: Account-level triggered alerts
  - name: alert-export
    x-displayName: Alert Export
    description: Export alert data
  - name: account-usage-v2
    x-displayName: Account Usage
    description: Account usage data
  - name: account-usage-alerts
    x-displayName: Account Usage Alerts
    description: Alerts related to account usage
  - name: account-usage-export
    x-displayName: Account Usage Export
    description: Export account usage data
  - name: web-journey-cookie-report
    x-displayName: Web Journey Cookie Report
    description: Cookie analysis and reporting for web journeys
  - name: notification-center
    x-displayName: Notification Center
    description: Find and manage email subscriptions
  - name: email-inbox-messages
    x-displayName: Email Inbox Messages
    description: Get Email Inbox message details
  - name: email-inbox-message-alerts
    x-displayName: Email Inbox Message Alerts
    description: Email inbox message alerts
servers:
  - url: https://api.observepoint.com
    description: ObservePoint Production API
security:
  - API_Key: []
  - BearerAuth: []
paths:
  /v3/web-audits/{auditId}/runs/{runId}/scores:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - web-audits
      summary: Get scores for specified audit run
      operationId: getAuditRunScores
      responses:
        '200':
          description: Audit scores data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_AuditSummary_ScoresDTO'
        '400':
          $ref: '#/components/responses/responses-BadRequest'
        '401':
          $ref: '#/components/responses/responses-UnAuthorized'
        '404':
          $ref: '#/components/responses/responses-NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/scores</div>
  /v3/web-audits/{auditId}/runs/{runId}/pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRun_PagesSort'
      - $ref: '#/components/parameters/SortDescendingParam'
    get:
      tags:
        - web-audits
      operationId: getAuditRunPages
      summary: Return pages found in the run
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages</div>


        Get all the pages in a given audit run
      responses:
        '200':
          description: OK, return a list of unique pages found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_Pages_DTO'
        '400':
          $ref: '#/components/responses/responses-BadRequest'
        '401':
          $ref: '#/components/responses/responses-UnAuthorized'
        '404':
          $ref: '#/components/responses/responses-NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/cookies:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - web-audits
      operationId: getCookies
      summary: Return a list of unique cookies
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/cookies</div>


        Get all unique cookie name and domain found on all the pages in a given
        audit run
      responses:
        '200':
          description: OK, return a list of unique cookies found
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CookieDTO'
        '400':
          $ref: '#/components/responses/responses-BadRequest'
        '401':
          $ref: '#/components/responses/responses-UnAuthorized'
        '404':
          $ref: '#/components/responses/responses-NotFound'
  /v3/web-journeys/{webJourneyId}/runs/{runId}/actions/{actionSequenceId}/cookies:
    get:
      tags:
        - web-journey-cookie-report
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-journeys/<span
        class="op-path-parameter">{webJourneyId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/actions/<span
        class="op-path-parameter">{actionSequenceId}</span>/cookies</div>


        Get all cookies affected by the given action
      summary: Get cookies for action
      operationId: getWebJourneyActionCookies
      parameters:
        - $ref: '#/components/parameters/WebJourneyId'
        - $ref: '#/components/parameters/RunId'
        - $ref: '#/components/parameters/ActionSequenceId'
      responses:
        '200':
          description: Cookies
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebJourneyActionCookiesDTO'
        '400':
          $ref: '#/components/responses/responses-BadRequest'
        '401':
          $ref: '#/components/responses/responses-UnAuthorized'
        '404':
          $ref: '#/components/responses/responses-NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/cookies/origin:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
    post:
      tags:
        - page-details-report
      operationId: getAuditCookieOriginStory
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/cookies/origin</div>


        Get the origin story for a cookie
      summary: Get cookie origin
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CookieOriginRequestDTO'
      responses:
        '200':
          description: OK, return a list of story actions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditPageCookieOriginResponseDTO'
        '400':
          $ref: '#/components/responses/responses-BadRequest'
        '401':
          $ref: '#/components/responses/responses-UnAuthorized'
        '404':
          $ref: '#/components/responses/responses-NotFound'
  /v3/web-journeys/{webJourneyId}/runs/{runId}/cookies/origin:
    parameters:
      - $ref: '#/components/parameters/WebJourneyId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - web-journey-cookie-report
      operationId: getWebJourneyRunCookieOriginStory
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-journeys/<span
        class="op-path-parameter">{webJourneyId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/cookies/origin</div>


        Get the origin story for a cookie
      summary: Get cookie origin
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CookieOriginRequestDTO'
      responses:
        '200':
          description: OK, return a list of origin story actions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebJourneyRunCookieOrigin'
        '400':
          $ref: '#/components/responses/responses-BadRequest'
        '401':
          $ref: '#/components/responses/responses-UnAuthorized'
        '404':
          $ref: '#/components/responses/responses-NotFound'
  /v3/web-journeys/{webJourneyId}/runs/{runId}/actions/{actionId}/cookies/origin:
    parameters:
      - $ref: '#/components/parameters/WebJourneyId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/ActionId'
    post:
      tags:
        - web-journey-cookie-report
      operationId: getWebJourneyActionCookieOriginStory
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-journeys/<span
        class="op-path-parameter">{webJourneyId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/actions/<span
        class="op-path-parameter">{actionId}</span>/cookies/origin</div>


        Get the origin story for a cookie
      summary: Get cookie origin
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CookieOriginRequestDTO'
      responses:
        '200':
          description: OK, return a list of story actions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebJourneyResponseCookieOriginDto'
        '400':
          $ref: '#/components/responses/responses-BadRequest'
        '401':
          $ref: '#/components/responses/responses-UnAuthorized'
        '404':
          $ref: '#/components/responses/responses-NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/geo-locations:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - web-audits
      operationId: getGeoLocation
      summary: Return a list of unique geo-locations
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/geo-locations</div>


        Get all unique geo-locations found on all the pages in a given audit run
      responses:
        '200':
          description: OK, return a list of unique geo-locations found
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GeoLocationDTO'
        '400':
          $ref: '#/components/responses/responses-BadRequest'
        '401':
          $ref: '#/components/responses/responses-UnAuthorized'
        '404':
          $ref: '#/components/responses/responses-NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/request-domains:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - web-audits
      operationId: getRequestDomain
      summary: Return a list of unique request-domains
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/request-domains</div>


        Get all unique request domains found on all the pages in a given audit
        run
      responses:
        '200':
          description: OK, return a list of request-domains found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RequestDomainDTO'
        '400':
          $ref: '#/components/responses/responses-BadRequest'
        '401':
          $ref: '#/components/responses/responses-UnAuthorized'
        '404':
          $ref: '#/components/responses/responses-NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/javascript-variables:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - name: size
        in: query
        required: false
        description: Number of items to be returned at once
        schema:
          type: integer
          maximum: 1000
          default: 50
          minimum: 50
      - name: startAfterPageId
        in: query
        required: false
        description: >
          Offset result, start from pageId next to `startAfterPageId`.

          To fetch first page, don't supply this parameter. 

          To fetch subsequent pages, supply `metadata.pagination.lastPageId`
          from previous response
        schema:
          $ref: '#/components/schemas/PageId'
    get:
      tags:
        - web-audits
      operationId: getJavaScriptVariables
      summary: Return a list of pages with JS variables
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/javascript-variables</div>


        Get all JS variables found on all the pages in a given audit run
      responses:
        '200':
          description: Pages with JS variables
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagesWithJsVariablesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/reports/failures:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - web-audits
      operationId: getAuditFailureResults
      description: >
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/failures</div>


        Returns a summary of failures for the given run. 

        Failures summary includes details for Pre-Audit Actions, On-Page
        Actions, all found links excluded and starting URLs navigation results.
      summary: Get run failures summary
      responses:
        '200':
          description: The result of the execution of the Audit Pre-Audit Actions if any
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditFailureResults'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/info:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
      - name: withBlockedRequestSummary
        in: query
        required: false
        description: Parameter to request inclusion of blockedRequestSummary in response
        schema:
          type: boolean
          default: false
      - name: withLinkSummary
        in: query
        required: false
        description: Parameter to request inclusion of `links` in response
        schema:
          type: boolean
          default: false
      - name: withParentPage
        in: query
        required: false
        description: Parameter to request inclusion of `parent` in response
        schema:
          type: boolean
          default: false
      - name: withScreenshotUrl
        in: query
        required: false
        description: Parameter to request inclusion of `screenshot` in response
        schema:
          type: boolean
          default: false
    get:
      tags:
        - page-details-report
      operationId: getPageInfo
      summary: Return specific page information
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/info</div>


        Get page information from specified audit run on a given page
      responses:
        '200':
          description: Page Info by page Id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageInfo'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/links/{linkDirection}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
      - $ref: '#/components/parameters/AuditRun_PageInfo_LinkDirection'
      - $ref: '#/components/parameters/AuditRun_PageInfo_LinkDownloadOptions'
      - $ref: '#/components/parameters/AuditRun_PageInfo_ThisUrlType'
    get:
      tags:
        - page-details-report
      operationId: getPageLinks
      summary: Get page links
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/links/<span
        class="op-path-parameter">{linkDirection}</span></div>


        Get up to 1000 page links with specified direction (from/to this page),
        use `downloadPageLinks` to get all items
      responses:
        '200':
          description: Page links
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_PageInfo_LinksDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/links/{linkDirection}/download:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
      - $ref: '#/components/parameters/AuditRun_PageInfo_LinkDirection'
      - $ref: '#/components/parameters/AuditRun_PageInfo_LinkDownloadOptions'
      - $ref: '#/components/parameters/AuditRun_PageInfo_ThisUrlType'
    get:
      tags:
        - page-details-report
      operationId: downloadPageLinks
      summary: Download page links
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/links/<span
        class="op-path-parameter">{linkDirection}</span>/download</div>


        Download page links with specified direction (from/to this page)
      responses:
        '200':
          description: Page links
          content:
            text/csv:
              schema:
                type: string
                format: csv
                description: See `AuditRun_PageInfo_LinkItem` for single row schema
          headers:
            content-disposition:
              description: >-
                Controls the name of the downloaded file (in case of `text/csv`
                content)
              schema:
                type: string
                example: >-
                  attachment;
                  filename="page-summary-links-to-this-page-My_Audit-2022-03-22_15-16-17.csv"
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/file-mapping:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
    get:
      tags:
        - page-details-report
      operationId: getFileMapping
      summary: Return remote file mapping results
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/file-mapping</div>


        Get remote file mapping results from specified audit run on a given page
      responses:
        '200':
          description: Page Info by page Id
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FileMappingResultsDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/tags:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
      - in: query
        name: getInsights
        schema:
          type: boolean
        required: false
        example: true
    get:
      tags:
        - page-details-report
      operationId: getPageTags
      summary: Return page tag information
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/tags</div>


        Get tags from specified audit run on a given page, getting summary
        insight is optional
      responses:
        '200':
          description: Tag Info by page Id, pageTagInsights object is optional
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagInfoDTOWithInsights'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/cookies:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
      - $ref: '#/components/parameters/Cookies_GetInsightsParam'
      - $ref: '#/components/parameters/Cookies_GetOriginsParam'
      - $ref: '#/components/parameters/Cookies_HidePreAuditActionOnlyCookiesParam'
    get:
      tags:
        - page-details-report
      operationId: getPageCookies
      summary: Return page cookie information
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/cookies</div>


        Get cookies from specified audit run on a given page, getting summary
        insight is optional
      responses:
        '200':
          description: OK, return cookies found on a page
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditPageCookiesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/request-log:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_Page_RequestLog_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRun_PageDetails_RequestLogSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
      - $ref: '#/components/parameters/searchParam'
      - $ref: '#/components/parameters/showPreAuditActionRequests'
      - in: query
        name: showFileChanges
        schema:
          type: boolean
          default: false
        required: false
        description: >-
          For privacy customers, when file changes are requested, we show the
          changes of the files between previous run and current run.
    get:
      tags:
        - page-details-report
      operationId: getPageRequestLog
      summary: Return network requests fired on a given page
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/request-log</div>


        Get request logs from specified audit run on a given page
      responses:
        '200':
          description: OK, return a list of network requests send
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RequestLogDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/console-log-summary:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
    post:
      tags:
        - page-details-report
      operationId: getPageConsoleLogSummary
      summary: Return console logs summary on a given page
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/console-log-summary</div>


        Get browser console logs summary for specified audit run page
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRunPage_ConsoleLogs_RequestDTO'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConsoleLogSummary'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/console-log:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
      - $ref: '#/components/parameters/pageParam'
      - in: query
        name: size
        required: false
        schema:
          type: integer
          maximum: 200
          default: 50
          minimum: 50
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRunPage_BrowserLogs_MessagesSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - page-details-report
      operationId: getPageConsoleLog
      summary: Return console logs generated on a given page
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/console-log</div>


        Get browser console logs for specified audit run page
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRunPage_ConsoleLogs_RequestDTO'
      responses:
        '200':
          description: OK, return a list of console logs generated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRunPage_ConsoleLogsDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/sparklines:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
    get:
      tags:
        - page-details-report
      summary: Return insights on a given page for all runs in the given days
      operationId: getPageSparklines
      responses:
        '200':
          description: Page Insights by page Id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SparkLinesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/sparklines</div>
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/trends/web-vitals:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
    get:
      tags:
        - page-details-report
      summary: Get Page Details Web Vitals trends relative to specified audit run
      operationId: getPageDetailsPageWebVitalsTrends
      responses:
        '200':
          description: Page Details Web Vitals trends data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_PageDetails_WebVitalsTrends_Response
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/trends/web-vitals</div>
  /v3/web-audits/{auditId}/pages/{pageId}/insight-trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/PageId'
      - in: path
        name: trendName
        description: name of the insight trend type
        schema:
          $ref: '#/components/schemas/AuditRun_PageDetails_TrendsEnum'
        required: true
      - in: query
        name: day
        description: how many days of run records should be included
        schema:
          type: integer
          minimum: 1
          maximum: 390
          example: 120
        required: true
    get:
      tags:
        - page-details-report
      summary: >-
        Return specific insight trend on a given page for all runs in the given
        duration (days)
      operationId: getPageInsightTrend
      responses:
        '200':
          description: A array of page insights
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageTrendsDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/insight-trends/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/pages/{pageId}/trends/web-vitals/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/PageId'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
      - in: path
        name: trendName
        schema:
          $ref: '#/components/schemas/AuditRun_WebVitalsTrends_Enum'
        required: true
    get:
      tags:
        - page-details-report
      summary: >-
        Get Page Details Web Vitals specific trend values relative to current
        day
      operationId: getPageDetailsPageWebVitalsTrend
      responses:
        '200':
          description: Page Details Web Vitals specific trend values
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_PageDetails_SpecificWebVitalsTrend_Response
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/trends/web-vitals/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/pages/{pageId}/screenshot:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PageId'
    get:
      tags:
        - web-audits
      operationId: generateAuditRunPageScreenshot
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/pages/<span
        class="op-path-parameter">{pageId}</span>/screenshot</div>


        Returns an pre-signed S3 URL for audit run page card
      summary: Get audit run page screenshot URL
      responses:
        '302':
          description: >-
            redirect with pre-signed S3 URL for screenshot of a page of an audit
            run
          headers:
            Location:
              description: The URL to which the client will be redirected
              schema:
                type: string
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/reports/page-summary:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - page-summary-report
      summary: get page summary insights
      operationId: getPageSummary
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PageSummaryRequestDTO'
      responses:
        '200':
          description: OK, return page summary insights
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageInsightsResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/page-summary</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/page-summary/pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PageSummary_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_PageSummary_PageSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - page-summary-report
      summary: Get insights by page
      operationId: getPageSummaryByPage
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PageSummaryRequestDTO'
      responses:
        '200':
          description: OK, return insights by page
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageSummaryPagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/page-summary/pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/page-summary/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - page-summary-report
      summary: Return insights for all runs in the given duration
      operationId: getPageSummaryTrends
      responses:
        '200':
          description: Insights by runId
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageSummarySparkLinesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/page-summary/trends</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/page-summary/trends/web-vitals:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - page-summary-report
      summary: Get Page Summary Web Vitals trends relative to specified audit run
      operationId: getPageSummaryWebVitalsTrends
      responses:
        '200':
          description: Page Summary Web Vitals trends data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_PageSummary_WebVitalsTrends_Response
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/page-summary/trends/web-vitals</div>
  /v3/web-audits/{auditId}/reports/page-summary/trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - in: path
        name: trendName
        description: name of the insight
        schema:
          $ref: '#/components/schemas/AuditRun_PageSummary_TrendsEnum'
        required: true
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - page-summary-report
      operationId: getPageSummaryTrend
      summary: Return insights on a given page for all runs in the given duration
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/page-summary/trends/<span
        class="op-path-parameter">{trendName}</span></div>


        Get page trend insight from specified time span of audit runs
      responses:
        '200':
          description: list of page insight
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemRun_SpecificTrendValuesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/reports/page-summary/trends/web-vitals/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - in: path
        name: trendName
        schema:
          $ref: '#/components/schemas/AuditRun_WebVitalsTrends_Enum'
        required: true
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - page-summary-report
      summary: >-
        Get Page Summary Web Vitals specific trend values relative to current
        day
      operationId: getPageSummaryWebVitalsTrend
      responses:
        '200':
          description: Page Summary Web Vitals specific trend values
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_PageSummary_SpecificWebVitalsTrend_Response
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/page-summary/trends/web-vitals/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/audit-summary:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - audit-summary-report
      summary: Get Audit Summary data for specified audit run
      operationId: getAuditRunAuditSummary
      requestBody:
        description: Filters applicable to Audit Summary report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_AuditSummary_RequestDTO'
      responses:
        '200':
          description: Audit Summary data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_AuditSummary_SummaryDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/audit-summary</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/audit-summary/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - audit-summary-report
      summary: Get Audit Summary trends relative to specified audit run
      operationId: getAuditRunAuditSummaryTrends
      responses:
        '200':
          description: Audit Summary trends data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_AuditSummary_TrendsDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/audit-summary/trends</div>
  /v3/web-audits/{auditId}/reports/audit-summary/trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - name: trendName
        in: path
        required: true
        description: name of requested trend
        schema:
          $ref: '#/components/schemas/AuditRun_AuditSummary_TrendsEnum'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - audit-summary-report
      summary: Get Audit Summary specific trend values relative to current day
      operationId: getAuditSummaryTrend
      responses:
        '200':
          description: Audit Summary specific trend values
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemRun_SpecificTrendValuesDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/audit-summary/trends/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/audit-summary/primary-tags:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - audit-summary-report
      summary: Get Audit Summary all primary tags data for specified audit run
      operationId: getAuditRunAuditSummaryPrimaryTags
      requestBody:
        description: Filters applicable to Audit Summary report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_AuditSummary_RequestDTO'
      responses:
        '200':
          description: Audit Summary all primary tags data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_AuditSummary_PrimaryTagsDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '424':
          $ref: '#/components/responses/FailedDependency'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/audit-summary/primary-tags</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/audit-summary/tags:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - audit-summary-report
      summary: Get Audit Summary all detected tags data for specified audit run
      operationId: getAuditRunAuditSummaryDetectedTags
      requestBody:
        description: Filters applicable to Audit Summary report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_AuditSummary_RequestDTO'
      responses:
        '200':
          description: Audit Summary all detected tags data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_AuditSummary_DetectedTagsDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/audit-summary/tags</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/audit-summary/scores:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - audit-summary-report
      summary: Get Audit Summary scores for specified audit run
      operationId: getAuditRunAuditSummaryScores
      responses:
        '200':
          description: Audit Summary scores data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_AuditSummary_ScoresDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/audit-summary/scores</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/audit-summary/scores/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - audit-summary-report
      summary: Get Audit Summary scores trends relative to specified audit run
      operationId: getAuditRunAuditSummaryScoresTrends
      responses:
        '200':
          description: Audit Summary all scores trends data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_AuditSummary_AllScoresTrendValuesDTO
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/audit-summary/scores/trends</div>
  /v3/web-audits/{auditId}/reports/audit-summary/scores/trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - name: trendName
        in: path
        required: true
        description: name of requested trend
        schema:
          $ref: '#/components/schemas/AuditRun_AuditSummary_ScoreTrendsEnum'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - audit-summary-report
      summary: Get Audit Summary specific score trend values relative to current time
      operationId: getAuditRunAuditScoreTrend
      responses:
        '200':
          description: Audit Score specific trend values
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_AuditSummary_ScoreTrendValuesDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/audit-summary/scores/trends/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/alert-summary/overview:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - alert-summary-report
      summary: Get Alerts statuses overview for specified audit run
      operationId: getAuditRunAlertSummaryAlertsOverview
      responses:
        '200':
          description: Alert Summary alerts overview data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_AlertSummary_AlertsOverviewResponseDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/alert-summary/overview</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/alert-summary/alerts:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - name: size
        in: query
        required: false
        allowEmptyValue: false
        schema:
          type: integer
          maximum: 1000
          default: 50
          minimum: 50
      - name: sortBy
        in: query
        required: false
        allowEmptyValue: false
        schema:
          $ref: '#/components/schemas/AuditRun_AuditSummary_AlertsSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - alert-summary-report
      summary: Get Alert Summary alerts table data for specified audit run
      operationId: getAuditRunAlertSummaryAlerts
      requestBody:
        description: Filters applicable to Alert Summary report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_AlertSummary_SummaryRequestDTO'
      responses:
        '200':
          description: Alert Summary alerts data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_AuditSummary_AlertsResponseDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/alert-summary/alerts</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/alert-summary/alerts/{alertId}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/PathParamAlertId'
    get:
      tags:
        - alert-summary-report
      summary: Get specific alert data (config + result) for specified audit run
      operationId: getAuditRunAlertSummaryAlertById
      responses:
        '200':
          description: Alert Summary specific alert data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_AuditSummary_SpecificAlertResponseDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/alert-summary/alerts/<span
        class="op-path-parameter">{alertId}</span></div>
  /v3/account-triggered-alerts/summary:
    post:
      operationId: getAccountTriggeredAlertsSummary
      tags:
        - account-triggered-alerts
      summary: Get summary for all triggered alerts for the account
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AccountTriggeredAlertsRequestDTO'
      responses:
        '200':
          description: Returns account triggered alerts summary
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountTriggeredAlerts_SummaryDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/account-triggered-alerts/summary</div>
  /v3/account-triggered-alerts/alerts:
    parameters:
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/QueryParamAlertsSearchPageSize'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/GetAccountTriggeredAlertsSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      operationId: getAccountTriggeredAlerts
      tags:
        - account-triggered-alerts
      summary: Get all triggered alerts for the account
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AccountTriggeredAlertsRequestDTO'
      responses:
        '200':
          description: Returns account triggered alerts list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountTriggeredAlerts_AlertsDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/account-triggered-alerts/alerts</div>
  /v3/account-triggered-alerts/alerts/{alertId}:
    parameters:
      - $ref: '#/components/parameters/PathParamAlertId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/QueryParamAlertsSearchPageSize'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/GetAccountTriggeredAlertSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      operationId: getAccountTriggeredSpecificAlert
      tags:
        - account-triggered-alerts
      summary: >-
        Get information about specific alert from all triggered alerts for the
        account
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AccountTriggeredAlertsSpecificAlertRequestDTO
      responses:
        '200':
          description: Returns account triggered alerts specific alert details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountTriggeredAlerts_DataSourcesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/account-triggered-alerts/alerts/<span
        class="op-path-parameter">{alertId}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/rule-summary:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      operationId: getAuditRunRuleResultsSummary
      tags:
        - rule-summary-report
      summary: Get rule summary for specified audit run
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_RuleSummary_RequestDTO'
      responses:
        '200':
          description: >-
            `Total Pages` + `Rules Applied` + `Rule Instances by Status` +
            `Pages by Rule Status`
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_RuleResultsSummaryDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/rule-summary</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/rule-summary/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      operationId: getAuditRunRuleResultsTrends
      tags:
        - rule-summary-report
      summary: Get rule status trends for specified audit run
      responses:
        '200':
          description: >-
            Audit rule results trends overview (a.k.a. trendlines a.k.a.
            sparklines) for both `Rule Instances by Status` + `Pages by Rule
            Status`
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_RuleSummary_RuleResults_AllTrendsDTO
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/rule-summary/trends</div>
  /v3/web-audits/{auditId}/reports/rule-summary/trends/rule-results:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysQP'
    get:
      operationId: getAuditRunRuleResultsTrend
      tags:
        - rule-summary-report
      summary: >-
        Get rule results trend values for specified audit run relative to
        current day
      responses:
        '200':
          description: Audit rule results trend values
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_RuleSummary_RuleResultsTrendDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/rule-summary/trends/rule-results</div>
  /v3/web-audits/{auditId}/reports/rule-summary/trends/page-count:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysQP'
    get:
      operationId: getAuditRunRuleResultsPageCountTrend
      tags:
        - rule-summary-report
      summary: >-
        Get rule results page count trend values for specified audit run
        relative to current day
      responses:
        '200':
          description: Audit rule results page count trend values
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_RuleSummary_RuleResults_PageCountTrendDTO
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/rule-summary/trends/page-count</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/rule-summary/rule-results:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      operationId: getAuditRunAllRuleResultsOverview
      tags:
        - rule-summary-report
      summary: Get all rules overview for specified audit run
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_RuleSummary_AllRuleResultsRequestDTO
      responses:
        '200':
          description: '`Rule Details by Page` - all rules overview'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_RuleSummary_AllRuleResultsOverviewDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/rule-summary/rule-results</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/rule-summary/rule-results/{ruleSnapshotId}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/RuleSnapshotId'
    post:
      operationId: getAuditRunSpecificRuleResults
      tags:
        - rule-summary-report
      summary: Get rule details for specified rule within specified audit run
      requestBody:
        description: Filters (page filtering supported only)
        required: false
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_RuleSummary_SpecificRuleResultsRequestDTO
      responses:
        '200':
          description: '`Rule Details by Page` - single rule details'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_RuleSummary_SpecificRuleResultsDTO
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/rule-summary/rule-results/<span
        class="op-path-parameter">{ruleSnapshotId}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/rule-summary/page-rule-results:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRun_RuleSummary_AllRules_PagesSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      operationId: getAuditRunPageRuleResults
      tags:
        - rule-summary-report
      summary: Get page rule results within specified audit run
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_RuleSummary_AllRuleResultsRequestDTO
      responses:
        '200':
          description: >-
            Pages list with rule failures (when no specific rule
            condition/outcome selected)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_RuleSummary_PageRuleResultsDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/rule-summary/page-rule-results</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/rule-summary/page-rule-results/{ruleSnapshotId}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/RuleSnapshotId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: >-
            #/components/schemas/AuditRun_RuleSummary_SpecificRule_PagesSortColumn
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      operationId: getAuditRunSpecificRulePageRuleResults
      tags:
        - rule-summary-report
      summary: Get specific rule page results within specified audit run
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_RuleSummary_SpecificRulePagesRequestDTO
      responses:
        '200':
          description: >-
            Pages list with rule condition details (when specific rule
            condition/outcome is selected)
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_RuleSummary_SpecificRulePageRuleResultsDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/rule-summary/page-rule-results/<span
        class="op-path-parameter">{ruleSnapshotId}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-inventory:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - tag-inventory-report
      summary: Get Tag Inventory summary for specified audit run
      operationId: getAuditRunTagInventorySummary
      requestBody:
        description: Filters applicable to Tag Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagInventory_RequestDTO'
      responses:
        '200':
          description: Tag Inventory summary data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagInventory_SummaryDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-inventory</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-inventory/tag-categories:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - tag-inventory-report
      summary: Get Tag Inventory tag categories summary for specified audit run
      operationId: getAuditRunTagInventoryTagCategories
      requestBody:
        description: Filters applicable to Tag Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagInventory_RequestDTO'
      responses:
        '200':
          description: Tag Inventory tag categories summary data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_TagInventory_TagCategoriesSummaryDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-inventory/tag-categories</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-inventory/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - tag-inventory-report
      summary: Get Tag Inventory trends relative to specified audit run
      operationId: getAuditRunTagInventoryTrends
      responses:
        '200':
          description: Tag Inventory trends data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagInventory_TrendsDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-inventory/trends</div>
  /v3/web-audits/{auditId}/reports/tag-inventory/trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - name: trendName
        in: path
        required: true
        description: name of requested trend
        schema:
          $ref: '#/components/schemas/AuditRun_TagInventory_TrendsEnum'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - tag-inventory-report
      summary: Get Tag Inventory specific trend values relative to current time
      operationId: getAuditRunTagInventoryTrend
      responses:
        '200':
          description: Tag Inventory specific trend values
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemRun_SpecificTrendValuesDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/tag-inventory/trends/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-inventory/tags:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - tag-inventory-report
      summary: Get Tag Inventory tag presence for specified audit run
      operationId: getAuditRunTagInventoryTagPresence
      requestBody:
        description: Filters applicable to Tag Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagInventory_RequestDTO'
      responses:
        '200':
          description: Tag Inventory tag presence data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagInventory_TagPresenceDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-inventory/tags</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-inventory/tags/{tagId}/accounts:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/TagId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_TagAccountList_PageSizeParam'
    post:
      tags:
        - tag-inventory-report
      summary: Get Tag Inventory tag accounts presence for specified audit run
      operationId: getAuditRunTagInventoryTagAccountPresence
      requestBody:
        description: Filters applicable to Tag Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagInventory_FilteredRequestDTO'
      responses:
        '200':
          description: Tag Inventory specific tag accounts presence data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_TagInventory_TagAccountPresenceDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-inventory/tags/<span
        class="op-path-parameter">{tagId}</span>/accounts</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-inventory/pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_TagInventory_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - tag-inventory-report
      summary: Get Tag Inventory page info for specified audit run
      operationId: getAuditRunTagInventoryPages
      requestBody:
        description: Filters applicable to Tag Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagInventory_RequestDTO'
      responses:
        '200':
          description: Tag Inventory page tag presence data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagInventory_PagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-inventory/pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-health:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - tag-health-report
      summary: Get Tag Health summary for specified audit run
      operationId: getAuditRunTagHealthSummary
      requestBody:
        description: Filters applicable to Tag Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagHealth_RequestDTO'
      responses:
        '200':
          description: Tag Health summary data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagHealth_SummaryDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-health</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-health/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - tag-health-report
      summary: Get Tag Health trends relative to for specified audit run
      operationId: getAuditRunTagHealthTrends
      responses:
        '200':
          description: Tag Health trends data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagHealth_TrendsDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-health/trends</div>
  /v3/web-audits/{auditId}/reports/tag-health/trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - name: trendName
        in: path
        required: true
        description: name of requested trend
        schema:
          $ref: '#/components/schemas/AuditRun_TagHealth_TrendsEnum'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - tag-health-report
      summary: Get Tag Health specific trend values relative to current day
      operationId: getAuditRunTagHealthTrend
      responses:
        '200':
          description: Tag Health specific trend values
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemRun_SpecificTrendValuesDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/tag-health/trends/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-health/tags:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - tag-health-report
      summary: Get Tag Health all tags list for specified audit run
      operationId: getAuditRunTagHealthTags
      requestBody:
        description: Filters applicable to Tag Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagHealth_RequestDTO'
      responses:
        '200':
          description: Tag Health all tags data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagHealth_TagListDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-health/tags</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-health/tags/{tagId}/accounts:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/TagId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_TagAccountList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRun_TagHealth_TagAccountsSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - tag-health-report
      summary: Get Tag Health tag accounts list for specified audit run
      operationId: getAuditRunTagHealthTagAccounts
      requestBody:
        description: Filters applicable to Tag Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagHealth_FilteredRequestDTO'
      responses:
        '200':
          description: Tag Health tag accounts data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagHealth_TagAccountListDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-health/tags/<span
        class="op-path-parameter">{tagId}</span>/accounts</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-health/pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_TagHealth_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - tag-health-report
      summary: Get Tag Health page list for specified audit run
      operationId: getAuditRunTagHealthPages
      requestBody:
        description: Filters applicable to Tag Health report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagHealth_RequestDTO'
      responses:
        '200':
          description: Tag Health pages data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagHealth_PageListDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-health/pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-duplicates-and-multiples:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - tag-duplicates-and-multiples-report
      summary: Get Tag Duplicates & Multiples summary for specified audit run
      operationId: getAuditRunTagDuplicatesAndMultiplesSummary
      requestBody:
        description: Filters applicable to Tag Duplicates & Multiples report
        required: false
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_TagDuplicatesAndMultiples_RequestDTO
      responses:
        '200':
          description: Tag Duplicates & Multiples summary data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_TagDuplicatesAndMultiples_SummaryDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-duplicates-and-multiples</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-duplicates-and-multiples/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - tag-duplicates-and-multiples-report
      summary: Get Tag Duplicates & Multiples trends relative to specified audit run
      operationId: getAuditRunTagDuplicatesAndMultiplesTrends
      responses:
        '200':
          description: Tag Duplicates & Multiples trends data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_TagDuplicatesAndMultiples_TrendsDTO
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-duplicates-and-multiples/trends</div>
  /v3/web-audits/{auditId}/reports/tag-duplicates-and-multiples/trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - name: trendName
        in: path
        required: true
        description: name of requested trend
        schema:
          $ref: '#/components/schemas/AuditRun_TagDuplicatesAndMultiples_TrendsEnum'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - tag-duplicates-and-multiples-report
      summary: >-
        Get Tag Duplicates & Multiples specific trend values relative to current
        date
      operationId: getAuditRunTagDuplicatesAndMultiplesTrend
      responses:
        '200':
          description: >-
            Tag Duplicates & Multiples specific trend data relative to current
            date
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemRun_SpecificTrendValuesDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/tag-duplicates-and-multiples/trends/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-duplicates-and-multiples/tags:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - tag-duplicates-and-multiples-report
      summary: Get Tag Duplicates & Multiples all tags data for specified audit run
      operationId: getAuditRunTagDuplicatesAndMultiplesSummaryTags
      requestBody:
        description: Filters applicable to Tag Duplicates & Multiples report
        required: false
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_TagDuplicatesAndMultiples_RequestDTO
      responses:
        '200':
          description: Tag Duplicates & Multiples all tags data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_TagDuplicatesAndMultiples_TagsDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-duplicates-and-multiples/tags</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-duplicates-and-multiples/tags/{tagId}/accounts:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/TagId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_TagAccountList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: >-
            #/components/schemas/AuditRun_TagDuplicatesAndMultiples_TagAccountsSortColumn
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - tag-duplicates-and-multiples-report
      summary: Get Tag Duplicates & Multiples tag accounts for specified audit run
      operationId: getAuditRunTagDuplicatesAndMultiplesSummaryTagAccounts
      requestBody:
        description: Filters applicable to Tag Duplicates & Multiples report
        required: false
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_TagDuplicatesAndMultiples_FilteredRequestDTO
      responses:
        '200':
          description: Tag Duplicates & Multiples summary data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_TagDuplicatesAndMultiples_TagAccountsDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-duplicates-and-multiples/tags/<span
        class="op-path-parameter">{tagId}</span>/accounts</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-duplicates-and-multiples/pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: >-
          #/components/parameters/AuditRun_TagDuplicatesAndMultiples_PagesSortParam
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - tag-duplicates-and-multiples-report
      summary: Get Tag Duplicates & Multiples pages for specified audit run
      operationId: getAuditRunTagDuplicatesAndMultiplesPages
      requestBody:
        description: Filters applicable to Tag Duplicates & Multiples report
        required: false
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_TagDuplicatesAndMultiples_PagesRequestDTO
      responses:
        '200':
          description: Tag Duplicates & Multiples page data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_TagDuplicatesAndMultiples_PagesDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-duplicates-and-multiples/pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/variable-inventory:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - variable-inventory-report
      summary: Get Variable Inventory summary for specified audit run
      operationId: getAuditRunVariableInventorySummary
      requestBody:
        description: Filters applicable to Variable Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_VariableInventory_RequestDTO'
      responses:
        '200':
          description: Variable Inventory summary data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_VariableInventory_SummaryDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/variable-inventory</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/variable-inventory/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - variable-inventory-report
      summary: Get Variable Inventory trends relative to specified audit run
      operationId: getAuditRunVariableInventoryTrends
      responses:
        '200':
          description: Variable Inventory summary data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_VariableInventory_TrendsDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/variable-inventory/trends</div>
  /v3/web-audits/{auditId}/reports/variable-inventory/trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - name: trendName
        in: path
        required: true
        description: name of requested trend
        schema:
          $ref: '#/components/schemas/AuditRun_VariableInventory_TrendsEnum'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - variable-inventory-report
      summary: Get Variable Inventory specific trend values relative to current day
      operationId: getAuditRunVariableInventoryTrend
      responses:
        '200':
          description: Variable Inventory specific trend values
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemRun_SpecificTrendValuesDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/variable-inventory/trends/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/variable-inventory/tags:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_TagAccountList_PageSizeParam'
    post:
      tags:
        - variable-inventory-report
      summary: Get Variable Inventory tag accounts list for specified audit run
      operationId: getAuditRunVariableInventoryTagAccounts
      requestBody:
        description: Filters applicable to Variable Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_VariableInventory_RequestDTO'
      responses:
        '200':
          description: Variable Inventory tag accounts list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_VariableInventory_TagsDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/variable-inventory/tags</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/variable-inventory/tag-account-variables:
    description: >-
      This endpoint will return top 500 variables with highest
      variableSetPageCount (Desc).
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - variable-inventory-report
      operationId: getAuditRunVariableInventoryTagAccountVariables
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/variable-inventory/tag-account-variables</div>


        This endpoint will only return top 500 variables which are sort by
        variableSetPageCount (Desc).
      summary: Get top 500 variables sorted by variableSetPageCount
      requestBody:
        description: Filters applicable to Variable Inventory report
        required: true
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_VariableInventory_TagAccountRequestDTO
      responses:
        '200':
          description: Variable Inventory tag account variables list
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_VariableInventory_TagAccountVariablesDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v3/web-audits/{auditId}/runs/{runId}/reports/variable-inventory/tag-account-pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_VariableInventory_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - variable-inventory-report
      summary: >-
        Get Variable Inventory page list for specific tag account in specified
        audit run
      operationId: getAuditRunVariableInventoryTagAccountPages
      requestBody:
        description: Filters applicable to Variable Inventory report
        required: true
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_VariableInventory_TagAccountRequestDTO
      responses:
        '200':
          description: Variable Inventory - page list for specified tag account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_VariableInventory_PagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/variable-inventory/tag-account-pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/variable-inventory/tag-account-variable-pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_VariableInventory_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - variable-inventory-report
      summary: >-
        Get Variable Inventory page list for specific tag account variable in
        specified audit run
      operationId: getAuditRunVariableInventoryTagAccountVariablePages
      requestBody:
        description: Filters applicable to Variable Inventory report
        required: true
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_VariableInventory_TagAccountVariableRequestDTO
      responses:
        '200':
          description: Variable Inventory - page list for specified tag account variable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_VariableInventory_PagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/variable-inventory/tag-account-variable-pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/variable-inventory/tag-account-variable-not-set-pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_VariableInventory_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - variable-inventory-report
      summary: >-
        Get Variable Inventory page list where variable is not set for specific
        tag account variable in specified audit run. This endpoint does not
        support sorting by `variable_count` because we retrieve pages that do
        NOT have that specific variable
      operationId: getAuditRunVariableInventoryTagAccountVariableNotSetPages
      requestBody:
        description: Filters applicable to Variable Inventory report
        required: true
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_VariableInventory_TagAccountVariableRequestDTO
      responses:
        '200':
          description: Variable Inventory tag account variable not set pages list
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_VariableInventory_VariableNotSetPagesDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/variable-inventory/tag-account-variable-not-set-pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/variable-inventory/tag-account-variable-values:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: >-
          #/components/parameters/AuditRun_TagAccountVariableValueList_PageSizeParam
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: >-
            #/components/schemas/AuditRun_VariableInventory_VariableValuesSortColumn
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - variable-inventory-report
      summary: >-
        Get Variable Inventory unique values list for specific tag account
        variable in specified audit run
      operationId: getAuditRunVariableInventoryTagAccountVariableUniqueValues
      requestBody:
        description: Filters applicable to Variable Inventory report
        required: true
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_VariableInventory_TagAccountVariableRequestDTO
      responses:
        '200':
          description: Variable Inventory tag account variable unique values list
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_VariableInventory_UniqueVariableValuesDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/variable-inventory/tag-account-variable-values</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/variable-inventory/tag-account-variable-value-pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_VariableInventory_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - variable-inventory-report
      summary: >-
        Get Variable Inventory page list for specific tag account variable value
        in specified audit run
      operationId: getAuditRunVariableInventoryTagAccountVariableValuePages
      requestBody:
        description: Filters applicable to Variable Inventory report
        required: true
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_VariableInventory_TagAccountVariableValueRequestDTO
      responses:
        '200':
          description: >-
            Variable Inventory tag account variable pages list with unique
            variable values
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_VariableInventory_VariableValuePagesDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/variable-inventory/tag-account-variable-value-pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/cookie-inventory:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - cookie-inventory-report
      summary: Get Cookie Inventory summary for specified audit run
      operationId: getAuditRunCookieInventorySummary
      requestBody:
        description: Filters applicable to Cookie Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_CookieInventory_RequestDTO'
      responses:
        '200':
          description: Cookie Inventory summary data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_CookieInventory_SummaryDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/cookie-inventory</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/cookie-inventory/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - cookie-inventory-report
      summary: Get Cookie Inventory trends relative to specified audit run
      operationId: getAuditRunCookieInventoryTrends
      responses:
        '200':
          description: Cookie Inventory trends data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_CookieInventory_TrendsDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/cookie-inventory/trends</div>
  /v3/web-audits/{auditId}/reports/cookie-inventory/trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - name: trendName
        in: path
        required: true
        description: name of requested trend
        schema:
          $ref: '#/components/schemas/AuditRun_CookieInventory_TrendsEnum'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - cookie-inventory-report
      summary: Get Cookie Inventory specific trend values relative to current time
      operationId: getAuditRunCookieInventoryTrend
      responses:
        '200':
          description: Cookie Inventory specific trend values data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemRun_SpecificTrendValuesDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/cookie-inventory/trends/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/cookie-inventory/cookies:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_CookieList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRun_CookieInventory_CookiesSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - cookie-inventory-report
      summary: Get Cookie Inventory cookie list for specified audit run
      operationId: getAuditRunCookieInventoryCookies
      requestBody:
        description: Filters applicable to Cookie Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_CookieInventory_RequestDTO'
      responses:
        '200':
          description: Cookie Inventory cookies data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_CookieInventory_CookiesListDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/cookie-inventory/cookies</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/cookie-inventory/pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_CookieInventory_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - cookie-inventory-report
      summary: Get Cookie Inventory page list for specified audit run
      operationId: getAuditRunCookieInventoryPages
      requestBody:
        description: Filters applicable to Cookie Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_CookieInventory_RequestDTO'
      responses:
        '200':
          description: Cookie Inventory pages data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_CookieInventory_PagesListDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/cookie-inventory/pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/cookie-inventory/cookie-pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_CookieInventory_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - cookie-inventory-report
      summary: >-
        Get Cookie Inventory page list for specific cookie in specified audit
        run
      operationId: getAuditRunCookieInventoryCookiePages
      requestBody:
        description: >-
          Filters applicable to Cookie Inventory report + specific cookie to
          check out its pages
        required: true
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_CookieInventory_CookiePagesRequestDTO
      responses:
        '200':
          description: Cookie Inventory specific cookie pages data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_CookieInventory_PagesListDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/cookie-inventory/cookie-pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/cookie-inventory/domains:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_CookieInventory_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_CookieInventory_DomainsSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - cookie-inventory-report
      summary: Get Cookie Domains list in specified audit run
      operationId: getAuditRunCookieInventoryCookieDomains
      requestBody:
        description: Filters applicable to Cookie Inventory report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_CookieInventory_RequestDTO'
      responses:
        '200':
          description: Cookie Inventory domains data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_CookieInventory_DomainsListDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/cookie-inventory/domains</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/browser-logs:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - browser-logs-report
      summary: Get Browser Logs summary for specified audit run
      operationId: getAuditRunBrowserLogsSummary
      requestBody:
        description: Filters applicable to Browser Logs report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_BrowserLogs_RequestDTO'
      responses:
        '200':
          description: Browser Logs summary data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_BrowserLogs_SummaryDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/browser-logs</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/browser-logs/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - browser-logs-report
      summary: Get Browser Logs trends relative to specified audit run
      operationId: getAuditRunBrowserLogsTrends
      responses:
        '200':
          description: Browser Logs trends data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_BrowserLogs_TrendsDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/browser-logs/trends</div>
  /v3/web-audits/{auditId}/reports/browser-logs/trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - name: trendName
        in: path
        required: true
        description: name of requested trend
        schema:
          $ref: '#/components/schemas/AuditRun_BrowserLogs_TrendsEnum'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - browser-logs-report
      summary: Get Browser Logs specific trend values relative to current time
      operationId: getAuditRunBrowserLogsTrend
      responses:
        '200':
          description: Browser Logs specific trend values data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemRun_SpecificTrendValuesDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/browser-logs/trends/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/browser-logs/messages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRun_BrowserLogs_MessagesSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - browser-logs-report
      summary: Get Browser Logs most common messages list for specified audit run
      operationId: getAuditRunBrowserLogsMessages
      requestBody:
        description: Filters applicable to Browser Logs report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_BrowserLogs_RequestDTO'
      responses:
        '200':
          description: Browser Logs most common messages
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_BrowserLogs_MessagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/browser-logs/messages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/browser-logs/pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_BrowserLogs_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - browser-logs-report
      summary: Get Browser Logs page list for specified audit run
      operationId: getAuditRunBrowserLogsPages
      requestBody:
        description: Filters applicable to Browser Logs report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_BrowserLogs_PagesRequestDTO'
      responses:
        '200':
          description: Browser Logs pages data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_BrowserLogs_PagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/browser-logs/pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/file-changes:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - file-changes-report
      summary: Get File Changes summary for specified audit run
      operationId: getAuditRunFileChangesSummary
      requestBody:
        description: Filters applicable to File Changes report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_FileChanges_RequestDTO'
      responses:
        '200':
          description: File Changes summary data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_FileChanges_SummaryDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/file-changes</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/file-changes/files:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_FileChangesList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRun_FileChanges_FilesSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - file-changes-report
      summary: Get File Changes files for specified audit run
      operationId: getAuditRunFileChangesFiles
      requestBody:
        description: Filters applicable to File Changes report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_FileChanges_RequestDTO'
      responses:
        '200':
          description: File Changes summary data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_FileChanges_FilesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/file-changes/files</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/file-changes/pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRun_FileChanges_PagesSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - file-changes-report
      summary: Get File Changes pages for specified audit run
      operationId: getAuditRunFileChangesPages
      requestBody:
        description: Filters applicable to File Changes report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_FileChanges_RequestDTO'
      responses:
        '200':
          description: File Changes pages data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_FileChanges_PagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/file-changes/pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/file-changes/file-pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRun_FileChanges_PagesSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - file-changes-report
      summary: Get File Changes pages for specific file in specified audit run
      operationId: getAuditRunFileChangesPagesForFile
      requestBody:
        description: Filters applicable to File Changes report
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_FileChanges_FilePagesRequestDTO'
      responses:
        '200':
          description: File Changes pages data for specific file
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_FileChanges_PagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/file-changes/file-pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/cookie-privacy:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - cookie-privacy-report
      summary: Get Cookie Privacy summary for specified audit run
      operationId: getAuditRunCookiePrivacySummary
      requestBody:
        description: Filters applicable to Cookie Privacy report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_CookiePrivacy_RequestDTO'
      responses:
        '200':
          description: Cookie Privacy summary data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_CookiePrivacy_SummaryDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/cookie-privacy</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/cookie-privacy/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - cookie-privacy-report
      summary: Get Cookie Privacy trends relative to specified audit run
      operationId: getAuditRunCookiePrivacyTrends
      responses:
        '200':
          description: Cookie Privacy trends data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_CookiePrivacy_TrendsDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/cookie-privacy/trends</div>
  /v3/web-audits/{auditId}/reports/cookie-privacy/trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - name: trendName
        in: path
        required: true
        description: name of requested trend
        schema:
          $ref: '#/components/schemas/AuditRun_CookiePrivacy_TrendsEnum'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - cookie-privacy-report
      summary: Get Cookie Privacy specific trend values relative to current day
      operationId: getAuditRunCookiePrivacyTrend
      responses:
        '200':
          description: Cookie Privacy specific trend values
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemRun_SpecificTrendValuesDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/cookie-privacy/trends/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/cookie-privacy/compliance:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_CookieList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRun_CookiePrivacy_CookiesSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - cookie-privacy-report
      summary: Get Cookie Privacy compliance for specified audit run
      operationId: getAuditRunCookiePrivacyCompliance
      requestBody:
        description: Filters applicable to Cookie Privacy report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_CookiePrivacy_RequestDTO'
      responses:
        '200':
          description: Cookie Privacy compliance data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_CookiePrivacy_CookiesComplianceDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/cookie-privacy/compliance</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/cookie-privacy/pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_CookiePrivacy_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - cookie-privacy-report
      summary: Get Cookie Privacy pages data for specified audit run
      operationId: getAuditRunCookiePrivacyPages
      requestBody:
        description: Filters applicable to Cookie Privacy report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_CookiePrivacy_RequestDTO'
      responses:
        '200':
          description: Cookie Privacy pages data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_CookiePrivacy_PagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/cookie-privacy/pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/cookie-privacy/cookie-pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_CookiePrivacy_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - cookie-privacy-report
      summary: >-
        Get Cookie Privacy pages data for specific cookie name+domain in
        specified audit run
      operationId: getAuditRunCookiePrivacyCookiePages
      requestBody:
        description: Filters applicable to Cookie Privacy report
        required: true
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_CookiePrivacy_CookiePagesRequestDTO
      responses:
        '200':
          description: Cookie Privacy pages data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_CookiePrivacy_PagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/cookie-privacy/cookie-pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-privacy:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - tag-privacy-report
      summary: Get Tag Privacy summary for specified audit run
      operationId: getAuditRunTagPrivacySummary
      requestBody:
        description: Filters applicable to Tag Privacy report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagPrivacy_RequestDTO'
      responses:
        '200':
          description: Tag Privacy summary data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagPrivacy_SummaryDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-privacy</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-privacy/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - tag-privacy-report
      summary: Get Tag Privacy trends relative to specified audit run
      operationId: getAuditRunTagPrivacyTrends
      responses:
        '200':
          description: Tag Privacy trends data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagPrivacy_TrendsDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-privacy/trends</div>
  /v3/web-audits/{auditId}/reports/tag-privacy/trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - name: trendName
        in: path
        required: true
        description: name of requested trend
        schema:
          $ref: '#/components/schemas/AuditRun_TagPrivacy_TrendsEnum'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - tag-privacy-report
      summary: Get Tag Privacy specific trend values relative to current day
      operationId: getAuditRunTagPrivacyTrend
      responses:
        '200':
          description: Tag Privacy specific trend values
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemRun_SpecificTrendValuesDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/tag-privacy/trends/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-privacy/compliance:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_TagAccountList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRun_TagPrivacy_TagsSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - tag-privacy-report
      summary: Get Tag Privacy compliance for specified audit run
      operationId: getAuditRunTagPrivacyCompliance
      requestBody:
        description: Filters applicable to Tag Privacy report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagPrivacy_RequestDTO'
      responses:
        '200':
          description: Tag Privacy compliance data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagPrivacy_TagsComplianceDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-privacy/compliance</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-privacy/pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_TagPrivacy_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - tag-privacy-report
      summary: Get Tag Privacy pages data for specified audit run
      operationId: getAuditRunTagPrivacyPages
      requestBody:
        description: Filters applicable to Tag Privacy report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagPrivacy_RequestDTO'
      responses:
        '200':
          description: Tag Privacy pages data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagPrivacy_PagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-privacy/pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/tag-privacy/tag-pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_TagPrivacy_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - tag-privacy-report
      summary: Get Tag Privacy pages data for specific tag in specified audit run
      operationId: getAuditRunTagPrivacyTagPages
      requestBody:
        description: Filters applicable to Tag Privacy report
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_TagPrivacy_TagPagesRequestDTO'
      responses:
        '200':
          description: Tag Privacy pages data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_TagPrivacy_PagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/tag-privacy/tag-pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/request-privacy:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - request-privacy-report
      summary: Get Request Privacy summary for specified audit run
      operationId: getAuditRunRequestPrivacySummary
      requestBody:
        description: Filters applicable to Request Privacy report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
      responses:
        '200':
          description: Request Privacy summary data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_RequestPrivacy_SummaryDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/request-privacy</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/request-privacy/trends:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    get:
      tags:
        - request-privacy-report
      summary: Get Request Privacy trends relative to specified audit run
      operationId: getAuditRunRequestPrivacyTrends
      responses:
        '200':
          description: Request Privacy trends data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_RequestPrivacy_TrendsDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/request-privacy/trends</div>
  /v3/web-audits/{auditId}/reports/request-privacy/trends/{trendName}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - name: trendName
        in: path
        required: true
        description: name of requested trend
        schema:
          $ref: '#/components/schemas/AuditRun_RequestPrivacy_TrendsEnum'
      - $ref: '#/components/parameters/AuditRun_Trends_DaysParam'
    get:
      tags:
        - request-privacy-report
      summary: Get Request Privacy specific trend values relative to current day
      operationId: getAuditRunRequestPrivacyTrend
      responses:
        '200':
          description: Request Privacy specific trend values
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemRun_SpecificTrendValuesDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/reports/request-privacy/trends/<span
        class="op-path-parameter">{trendName}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/request-privacy/locations:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
    post:
      tags:
        - request-privacy-report
      summary: Get Request Privacy locations for specified audit run
      operationId: getAuditRunRequestPrivacyLocations
      requestBody:
        description: >-
          Filters applicable to Request Privacy report. `countryCode` filter is
          not abided by this endpoint.
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
      responses:
        '200':
          description: Request Privacy locations data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_RequestPrivacy_RequestLocationsDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/request-privacy/locations</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/request-privacy/compliance:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_RequestDomainGeoList_PageSizeParam'
      - name: sortBy
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/AuditRun_RequestPrivacy_RequestsSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - request-privacy-report
      summary: Get Request Privacy compliance for specified audit run
      operationId: getAuditRunRequestPrivacyCompliance
      requestBody:
        description: Filters applicable to Request Privacy report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
      responses:
        '200':
          description: Request Privacy compliance data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AuditRun_RequestPrivacy_RequestsComplianceDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/request-privacy/compliance</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/request-privacy/pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_RequestPrivacy_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - request-privacy-report
      summary: Get Request Privacy pages data for specified audit run
      operationId: getAuditRunRequestPrivacyPages
      requestBody:
        description: Filters applicable to Request Privacy report
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
      responses:
        '200':
          description: Request Privacy pages data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_RequestPrivacy_PagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/request-privacy/pages</div>
  /v3/web-audits/{auditId}/runs/{runId}/reports/request-privacy/request-pages:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/AuditRun_PagesList_PageSizeParam'
      - $ref: '#/components/parameters/AuditRun_RequestPrivacy_PagesSortParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - request-privacy-report
      summary: >-
        Get Request Privacy pages data for specific request in specified audit
        run
      operationId: getAuditRunRequestPrivacyRequestPages
      requestBody:
        description: Filters applicable to Request Privacy report
        required: true
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/AuditRun_RequestPrivacy_RequestPagesRequestDTO
      responses:
        '200':
          description: Request Privacy pages data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditRun_RequestPrivacy_PagesDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/reports/request-privacy/request-pages</div>
  /v3/manual-journeys/{manualJourneyId}/runs/{runId}/exports/{exportType}:
    parameters:
      - $ref: '#/components/parameters/ManualJourneyId'
      - $ref: '#/components/parameters/RunId'
      - name: exportType
        in: path
        required: true
        description: Controls accepted values
        schema:
          $ref: '#/components/schemas/ManualJourneyRun_ExportTypeEnum'
    post:
      tags:
        - manual-journey-run-export
      operationId: requestManualJourneyRunExport
      summary: Create export for manual journey run
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ManualJourneyRun_ExportRequestDTO'
      responses:
        '201':
          description: Details of created export
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExportResultDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/manual-journeys/<span
        class="op-path-parameter">{manualJourneyId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/exports/<span
        class="op-path-parameter">{exportType}</span></div>
  /v3/web-journeys/{webJourneyId}/runs/{runId}/exports/{exportType}:
    parameters:
      - $ref: '#/components/parameters/WebJourneyId'
      - $ref: '#/components/parameters/RunId'
      - name: exportType
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/WebJourneyRun_ExportTypeEnum'
    post:
      tags:
        - web-journey-run-export
      operationId: requestWebJourneyRunExport
      summary: Create export for web journey run
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              type: object
              description: >-
                Exact type depends on `exportType` param, see mapping in
                `WebJourneyRun_ExportTypeToFilterMapping`
      responses:
        '201':
          description: Details of created export
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExportResultDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-journeys/<span
        class="op-path-parameter">{webJourneyId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/exports/<span
        class="op-path-parameter">{exportType}</span></div>
  /v3/web-audits/{auditId}/runs/{runId}/exports/{exportType}:
    parameters:
      - $ref: '#/components/parameters/AuditId'
      - $ref: '#/components/parameters/RunId'
      - name: exportType
        in: path
        required: true
        description: >-
          Controls accepted values and their bytes for page `size`, `sortBy` and
          request body
        schema:
          $ref: '#/components/schemas/AuditRun_ExportTypeEnum'
      - $ref: '#/components/parameters/pageParam'
      - name: size
        in: query
        required: false
        schema:
          type: integer
          description: >-
            Same constraints applied as on regular "get items list" endpoint,
            depends on `exportType`
      - name: sortBy
        in: query
        required: false
        description: Controls sorting
        schema:
          type: string
          description: >
            Must correspond to sort column enum appropriate for given export
            type, see mapping in `AuditRun_ExportTypeToSortColumnMapping`
      - $ref: '#/components/parameters/SortDescendingParam'
      - $ref: '#/components/parameters/Export_AllDataParam'
      - $ref: '#/components/parameters/Export_NoLimitParam'
    post:
      tags:
        - audit-run-export
      operationId: requestAuditRunExport
      summary: Create export for web audit run
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              type: object
              description: >-
                Exact type depends on `exportType` param, see mapping in
                `AuditRun_ExportTypeToFilterMapping`
      responses:
        '201':
          description: Details of created export
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExportResultDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/web-audits/<span
        class="op-path-parameter">{auditId}</span>/runs/<span
        class="op-path-parameter">{runId}</span>/exports/<span
        class="op-path-parameter">{exportType}</span></div>
  /v3/consent-categories/exports/{exportType}:
    parameters:
      - name: exportType
        in: path
        required: true
        description: Controls accepted values
        schema:
          $ref: '#/components/schemas/ConsentCategory_ExportTypeEnum'
    post:
      tags:
        - consent-category-export
      operationId: requestConsentCategoryExport
      summary: Create export for consent category
      responses:
        '201':
          description: Details of created export
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExportResultDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/consent-categories/exports/<span
        class="op-path-parameter">{exportType}</span></div>
  /v3/alerts/exports/{exportType}:
    parameters:
      - name: exportType
        in: path
        required: true
        description: Controls accepted values
        schema:
          $ref: '#/components/schemas/AlertExportTypeEnum'
      - $ref: '#/components/parameters/pageParam'
      - name: size
        in: query
        required: false
        schema:
          type: integer
          description: >-
            Same constraints applied as on regular "get items list" endpoint,
            depends on `exportType`
          default: 50
      - name: sortBy
        in: query
        required: false
        description: Controls sorting
        schema:
          type: string
          description: >
            Must correspond to sort column enum appropriate for given export
            type, see mapping in `AlertExportTypeToSortColumnMapping`
      - $ref: '#/components/parameters/SortDescendingParam'
      - $ref: '#/components/parameters/Export_AllDataParam'
    post:
      tags:
        - alert-export
      operationId: requestAlertExport
      summary: Create export for alert
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              type: object
              description: >-
                Exact type depends on `exportType` param, see mapping in
                `AlertExportTypeToFilterMapping`
      responses:
        '201':
          description: Details of created export
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExportResultDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/alerts/exports/<span
        class="op-path-parameter">{exportType}</span></div>
  /v3/usage/exports/{exportType}:
    parameters:
      - name: exportType
        in: path
        required: true
        description: Controls accepted values
        schema:
          $ref: '#/components/schemas/AccountUsageExportTypeEnum'
    post:
      tags:
        - account-usage-export
      operationId: requestUsageExport
      summary: Create export for account usage
      requestBody:
        description: Filters
        required: false
        content:
          application/json:
            schema:
              type: object
              description: >-
                Exact type depends on `exportType` param, see mapping in
                `AccountUsageExportTypeToFilterMapping`
      responses:
        '201':
          description: Details of created export
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExportResultDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/usage/exports/<span
        class="op-path-parameter">{exportType}</span></div>
  /v3/exports:
    parameters:
      - $ref: '#/components/parameters/pageParam'
      - name: size
        in: query
        required: false
        schema:
          type: integer
          default: 20
          minimum: 20
          maximum: 200
      - name: sortBy
        in: query
        required: false
        description: Controls sorting
        schema:
          $ref: '#/components/schemas/ExportCenter_ExportsSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
      - name: exportedItemType
        in: query
        description: aggregate filter for different export types and item types
        required: false
        schema:
          $ref: '#/components/schemas/ExportCenter_ExportedItemTypeEnum'
      - name: search
        in: query
        required: false
        description: Filter by item or export name in "contains" mode
        schema:
          type: string
          example: my audit
      - name: requestedByUserId
        in: query
        required: false
        description: Filter by user ID of export requestor
        schema:
          $ref: '#/components/schemas/UserId'
      - name: exportIds
        style: form
        explode: false
        in: query
        required: false
        description: >-
          Filter by a list of one or more export IDs, comma separated (example
          exportIds=1,2 or exportIds=1)
        schema:
          type: array
          minItems: 1
          items:
            $ref: '#/components/schemas/ExportId'
    get:
      tags:
        - exports
      operationId: getExportCenterExports
      summary: Get export center exports
      responses:
        '200':
          description: Export Center exports
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExportCenter_ExportsDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/exports</div>
  /v3/exports/{exportUuid}:
    parameters:
      - name: exportUuid
        in: path
        required: true
        description: UUID of the export file
        schema:
          $ref: '#/components/schemas/ExportUuid'
    get:
      tags:
        - exports
      operationId: getExportDownload
      summary: Download export
      responses:
        '302':
          description: Redirect to presigned export link
          headers:
            Location:
              schema:
                type: string
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/exports/<span class="op-path-parameter">{exportUuid}</span></div>
  /v3/exports/scheduled:
    get:
      parameters:
        - name: search
          description: >
            Return Scheduled Exports which contain the provided text in their
            name, 

            schedule description, owner user name, or exported item name.
          in: query
          required: false
          allowEmptyValue: false
          schema:
            type: string
        - name: exportedItemType
          description: Return Scheduled Exports with specified exported item type.
          in: query
          required: false
          allowEmptyValue: false
          schema:
            $ref: '#/components/schemas/ScheduledExports_ExportedItemType'
        - name: exportedItemId
          description: |
            Return Scheduled Exports for a specific exported item.
            Should be used together with `exportedItemType` parameter.
          in: query
          required: false
          allowEmptyValue: false
          schema:
            $ref: '#/components/schemas/ScheduledExports_ExportedItemId'
        - name: size
          in: query
          required: false
          allowEmptyValue: false
          schema:
            type: integer
            maximum: 1000
            default: 50
            minimum: 50
        - name: sortBy
          in: query
          required: false
          allowEmptyValue: false
          schema:
            $ref: '#/components/schemas/ScheduledExports_SortColumn'
        - $ref: '#/components/parameters/pageParam'
        - $ref: '#/components/parameters/SortDescendingParam'
      tags:
        - scheduled-exports
      operationId: getScheduledExports
      summary: Get Scheduled Exports
      responses:
        '200':
          description: Paginated list of Scheduled Exports
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScheduledExportListDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/responses-Forbidden'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/exports/scheduled</div>
    post:
      tags:
        - scheduled-exports
      operationId: createScheduledExport
      summary: Create scheduled export
      requestBody:
        description: Scheduled Export definition
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateScheduledExportRequestDTO'
      responses:
        '201':
          description: Created Scheduled Export
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScheduledExportDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/responses-Forbidden'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/exports/scheduled</div>
  /v3/exports/scheduled/{scheduledExportId}:
    parameters:
      - name: scheduledExportId
        in: path
        required: true
        allowEmptyValue: false
        schema:
          $ref: '#/components/schemas/ScheduledExportId'
    get:
      tags:
        - scheduled-exports
      operationId: getScheduledExportById
      summary: Get specific Scheduled Export
      responses:
        '200':
          description: Scheduled Export definition
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScheduledExportDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/responses-Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/exports/scheduled/<span
        class="op-path-parameter">{scheduledExportId}</span></div>
    put:
      tags:
        - scheduled-exports
      operationId: updateScheduledExportById
      summary: Update specific Scheduled Export
      requestBody:
        description: Scheduled Export definition
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateScheduledExportRequestDTO'
      responses:
        '200':
          description: Updated Scheduled Export
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScheduledExportDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/responses-Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-put">PUT</span>
        /v3/exports/scheduled/<span
        class="op-path-parameter">{scheduledExportId}</span></div>
    delete:
      tags:
        - scheduled-exports
      operationId: deleteScheduledExportById
      summary: Delete specific Scheduled Export
      responses:
        '204':
          description: Deleted successfully
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/responses-Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span
        class="op-http-method-delete">DELETE</span> /v3/exports/scheduled/<span
        class="op-path-parameter">{scheduledExportId}</span></div>
  /v3/alerts:
    post:
      tags:
        - alerts
      operationId: createAlert
      summary: Create Alert
      requestBody:
        description: Alert definition
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateAlertRequestDTO'
      responses:
        '201':
          description: created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateAlertResponseDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/alerts</div>
  /v3/alerts/{alertId}:
    parameters:
      - $ref: '#/components/parameters/PathParamAlertId'
    get:
      tags:
        - alerts
      operationId: getAlertById
      summary: Get specific Alert by ID
      responses:
        '200':
          description: alert definition
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetAlertDefinitionResponseDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/alerts/<span class="op-path-parameter">{alertId}</span></div>
    put:
      tags:
        - alerts
      operationId: updateAlertById
      summary: Update specific Alert
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateAlertRequestDTO'
      responses:
        '204':
          description: updated successfully
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-put">PUT</span>
        /v3/alerts/<span class="op-path-parameter">{alertId}</span></div>
    delete:
      tags:
        - alerts
      operationId: deleteAlertById
      summary: Delete specific Alert
      responses:
        '204':
          description: deleted successfully
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span
        class="op-http-method-delete">DELETE</span> /v3/alerts/<span
        class="op-path-parameter">{alertId}</span></div>
  /v3/alerts/{alertId}/labels:
    parameters:
      - $ref: '#/components/parameters/PathParamAlertId'
    put:
      tags:
        - alerts
      operationId: updateAlertLabels
      summary: Update labels for an Alert
      requestBody:
        content:
          application/json:
            schema:
              title: AlertSetLabelsRequestDTO
              description: existing labels will be overwritten by labels listed here
              type: object
              properties:
                labels:
                  type: array
                  items:
                    $ref: '#/components/schemas/LabelId'
      responses:
        '204':
          description: alert labels updated successfully
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-put">PUT</span>
        /v3/alerts/<span class="op-path-parameter">{alertId}</span>/labels</div>
  /v3/alerts/library:
    parameters:
      - $ref: '#/components/parameters/QueryParamAlertsSearchPageSize'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/SortDescendingParam'
      - name: sortBy
        in: query
        required: false
        allowEmptyValue: false
        schema:
          $ref: '#/components/schemas/GetAlertsLibrarySortColumn'
    post:
      tags:
        - alerts
      operationId: getAlertsForLibrary
      summary: Get Alerts Library items
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetAlertsLibraryRequestDTO'
      responses:
        '200':
          description: Alerts Library items
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetAlertsLibraryResponseDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/alerts/library</div>
  /v3/alerts/metrics/{metricType}:
    parameters:
      - name: metricType
        in: path
        required: true
        allowEmptyValue: false
        schema:
          $ref: '#/components/schemas/AlertMetricTypeEnum'
      - $ref: '#/components/parameters/QueryParamAlertsSearchPageSize'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/SortDescendingParam'
      - name: sortBy
        in: query
        required: false
        allowEmptyValue: false
        schema:
          $ref: '#/components/schemas/GetAlertsByMetricSortColumn'
    get:
      tags:
        - alerts
      operationId: getAlertsByMetric
      summary: Get Alerts by metric
      responses:
        '200':
          description: All alerts in an account with the same metric
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetAlertsByMetricResponseDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/alerts/metrics/<span
        class="op-path-parameter">{metricType}</span></div>
  /v3/alerts/target-items/{itemType}/search:
    parameters:
      - $ref: '#/components/parameters/PathParamAlertAssignmentItemType'
      - $ref: '#/components/parameters/QueryParamAlertAssignmentsPageSize'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/QueryParamAlertAssignmentsSort'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - alerts
      operationId: searchTargetItemsForAlert
      summary: >-
        Search target items (data sources - audits, journeys etc) that may have
        specified Alert assigned or not assigned
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchAlertAssignmentsRequestDTO'
      responses:
        '200':
          description: >-
            Items (data sources) that may have specified Alert assigned or not
            assigned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchAlertAssignmentsResponseDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/alerts/target-items/<span
        class="op-path-parameter">{itemType}</span>/search</div>
  /v3/alerts/{alertId}/target-items:
    parameters:
      - $ref: '#/components/parameters/PathParamAlertId'
    patch:
      tags:
        - alerts
      operationId: updateTargetItemsOfAlert
      summary: Update target items (data sources) that have specified Alert assigned
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateSpecificAlertAssignmentsRequestDTO'
      responses:
        '204':
          description: Updated successfully
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-patch">PATCH</span>
        /v3/alerts/<span
        class="op-path-parameter">{alertId}</span>/target-items</div>
  /v3/alerts/search/assignments:
    parameters:
      - $ref: '#/components/parameters/QueryParamAlertsSearchPageSize'
      - $ref: '#/components/parameters/pageParam'
      - name: sortBy
        in: query
        required: false
        allowEmptyValue: false
        schema:
          $ref: '#/components/schemas/SearchAlertsForAssignmentSortColumn'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - alerts
      operationId: searchAlertsForAssignment
      summary: Search Alerts for assigning them to other items (audits, WJs etc)
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchAlertsForAssignmentRequestDTO'
      responses:
        '200':
          description: Assignments
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchAlertsForAssignmentResponseDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/alerts/search/assignments</div>
  /v3/alerts/assignments/{itemType}/{itemId}:
    parameters:
      - $ref: '#/components/parameters/PathParamAlertAssignmentItemType'
      - $ref: '#/components/parameters/PathParamAlertAssignmentItemId'
    patch:
      tags:
        - alerts
      operationId: updateAlertsAssignedToItem
      summary: Update Alerts assigned to specified item (audit, journey etc)
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateSpecificItemAlertsRequestDTO'
      responses:
        '204':
          description: updated successfully
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-patch">PATCH</span>
        /v3/alerts/assignments/<span
        class="op-path-parameter">{itemType}</span>/<span
        class="op-path-parameter">{itemId}</span></div>
  /v3/usage/alert-summary/alerts:
    get:
      tags:
        - account-usage-alerts
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/usage/alert-summary/alerts</div>


        Get Alert Summary alerts data for account usage
      operationId: getAccountUsageAlertSummaryAlerts
      summary: Get Alert Summary alerts data for account usage
      responses:
        '200':
          description: Alert Summary alerts data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AccountUsage_AlertSummary_AlertsResponseDTO
        '401':
          $ref: '#/components/responses/UnAuthorized'
  /v3/usage/overview:
    get:
      tags:
        - account-usage-v2
      operationId: getAccountUsageV2Overview
      summary: Get brief usage overview for account
      responses:
        '200':
          description: Usage overview
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountUsageV2_Overview_ResponseDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/usage/overview</div>
  /v3/usage/summary:
    get:
      tags:
        - account-usage-v2
      operationId: getAccountUsageV2NotFilterableSummary
      summary: Get not filterable usage summary for account
      responses:
        '200':
          description: Basic usage summary
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountUsageV2_Summary_ResponseDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/usage/summary</div>
  /v3/usage/{itemType}/summary:
    parameters:
      - $ref: '#/components/parameters/AccountUsageV2_ItemType'
    post:
      tags:
        - account-usage-v2
      operationId: getAccountUsageV2SpecificItemTypeSummary
      summary: >-
        Get filterable specific item type usage summary for account. If web
        journeys are not included in contract, 404 status code will be returned
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AccountUsageV2_RequestDTO'
      responses:
        '200':
          description: Specific item type usage summary
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AccountUsageV2_SpecificItemTypeSummary_ResponseDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/usage/<span
        class="op-path-parameter">{itemType}</span>/summary</div>
  /v3/usage/{itemType}/trends:
    parameters:
      - $ref: '#/components/parameters/AccountUsageV2_ItemType'
    post:
      tags:
        - account-usage-v2
      operationId: getAccountUsageV2Trends
      summary: Get usage trends for specified item type
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AccountUsageV2_RequestDTO'
      responses:
        '200':
          description: Usage trends
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountUsageV2_Trends_ResponseDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/usage/<span class="op-path-parameter">{itemType}</span>/trends</div>
  /v3/usage/{itemType}/daily-trends:
    parameters:
      - $ref: '#/components/parameters/AccountUsageV2_ItemType'
    get:
      tags:
        - account-usage-v2
      operationId: getAccountUsageV2DailyTrends
      summary: Get usage trends for rolling week, for specified item type
      responses:
        '200':
          description: Usage trends
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountUsageV2_DailyTrends_ResponseDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/usage/<span
        class="op-path-parameter">{itemType}</span>/daily-trends</div>
  /v3/notification-center/emails:
    get:
      tags:
        - notification-center
      operationId: getNotificationCenterEmails
      summary: Get all emails in an account
      responses:
        '200':
          description: All emails in account, their usage and corresponding users
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationCenter_GetEmails_ResponseDTO'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/notification-center/emails</div>
    post:
      tags:
        - notification-center
      operationId: getNotificationCenterEmailsSubscribedToItems
      summary: Get emails subscribed to given items
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationCenter_GetEmails_RequestDTO'
      responses:
        '200':
          description: List of emails subscribed to given items that accessible by user
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationCenter_GetEmails_ResponseDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/notification-center/emails</div>
  /v3/notification-center/target-items/{itemType}/search:
    parameters:
      - in: path
        name: itemType
        required: true
        allowEmptyValue: false
        schema:
          $ref: '#/components/schemas/NotificationCenter_AssignmentItemTypeEnum'
      - in: query
        name: size
        required: false
        allowEmptyValue: false
        schema:
          type: integer
          maximum: 1000
          default: 50
          minimum: 50
      - in: query
        name: sortBy
        required: false
        allowEmptyValue: false
        schema:
          $ref: '#/components/schemas/NotificationCenter_AssignmentsSortColumn'
      - $ref: '#/components/parameters/pageParam'
      - $ref: '#/components/parameters/SortDescendingParam'
    post:
      tags:
        - notification-center
      operationId: searchTargetItemsForEmails
      summary: >-
        Search assignable items (audits, journeys, rules etc) for specified
        email
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/NotificationCenter_SearchForAssignments_RequestDTO
      responses:
        '200':
          description: Items that have specified email both assigned and not assigned
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/NotificationCenter_SearchForAssignments_ResponseDTO
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/notification-center/target-items/<span
        class="op-path-parameter">{itemType}</span>/search</div>
  /v3/email-inbox-message-alerts:
    post:
      tags:
        - email-inbox-message-alerts
      operationId: getEmailInboxMessageAlerts
      summary: Get all alerts for selected for email inbox message
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EmailInboxMessageAlertsRequestDTO'
      responses:
        '200':
          description: All alerts for selected email inbox messages
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmailInboxMessageAlertsResponseDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      description: >-
        <div class="op-path-box"><span class="op-http-method-post">POST</span>
        /v3/email-inbox-message-alerts</div>
  /v3/email-inbox-messages/{messageId}:
    parameters:
      - $ref: '#/components/parameters/EmailInboxMessageId'
    get:
      tags:
        - email-inbox-messages
      operationId: getEmailInboxMessageDetails
      summary: Get all the details of an email inbox message
      responses:
        '200':
          description: The details of the email inbox message
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmailInboxMessageDetailsResponseDTO'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      description: >-
        <div class="op-path-box"><span class="op-http-method-get">GET</span>
        /v3/email-inbox-messages/<span
        class="op-path-parameter">{messageId}</span></div>
components:
  parameters:
    AuditId:
      name: auditId
      in: path
      required: true
      description: Unique identification number for web audit
      deprecated: false
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/AuditId'
    WebJourneyId:
      name: webJourneyId
      in: path
      required: true
      description: Unique identification number for web journey
      deprecated: false
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/WebJourneyId'
    AppJourneyId:
      name: appJourneyId
      in: path
      required: true
      description: Unique identification number for app journey
      deprecated: false
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/AppJourneyId'
    ManualJourneyId:
      name: manualJourneyId
      in: path
      required: true
      description: Unique identification number for manual journey
      deprecated: false
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/ManualJourneyId'
    AthenaQueryRequestId:
      name: requestId
      in: path
      required: true
      description: Unique identification string for a live results query.
      deprecated: false
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/AthenaQueryRequestId'
    RunId:
      name: runId
      in: path
      required: true
      description: Unique identification number for web audit or journey run
      deprecated: false
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/RunId'
    PageId:
      name: pageId
      in: path
      required: true
      description: >-
        Unique identification number for web audit run-page, it is different
        from dcUUID
      deprecated: false
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/PageId'
    ActionId:
      name: actionId
      in: path
      required: true
      description: Unique identification number for web-journey action
      deprecated: false
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/ActionId'
    ActionSequenceId:
      name: actionSequenceId
      in: path
      required: true
      description: Unique identification number for web-journey action
      deprecated: false
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/ActionSequenceId'
    TagId:
      name: tagId
      in: path
      required: true
      description: Tag ID
      schema:
        $ref: '#/components/schemas/TagId'
    pageParam:
      in: query
      name: page
      description: Number of results page of an endpoint with paginated results
      required: false
      schema:
        type: integer
        default: 0
        minimum: 0
    LimitParam:
      in: query
      name: limit
      description: Number of results per page of an endpoint with paginated results
      required: false
      schema:
        type: integer
        minimum: 1
        default: 50
        maximum: 1000
    AfterParam:
      in: query
      name: after
      description: Get items after this item
      required: false
      schema:
        type: string
    SortDescendingParam:
      name: sortDesc
      in: query
      description: Controls sorting order
      required: false
      schema:
        type: boolean
        default: false
    searchParam:
      in: query
      name: search
      description: Filters results by a search string
      required: false
      schema:
        type: string
    showPreAuditActionRequests:
      in: query
      name: showPreAuditActionRequests
      description: Filters results by cookie origin type
      required: false
      schema:
        type: boolean
        default: false
    AuditRun_PagesList_PageSizeParam:
      in: query
      name: size
      required: false
      schema:
        type: integer
        maximum: 1000
        default: 50
        minimum: 50
    AuditRun_CookieInventory_PageSizeParam:
      in: query
      name: size
      required: false
      schema:
        type: integer
        maximum: 1000
        default: 50
        minimum: 50
    AuditRun_PageSummary_PagesList_PageSizeParam:
      in: query
      name: size
      required: false
      schema:
        type: integer
        maximum: 10000
        default: 50
        minimum: 50
    AuditRun_TagAccountList_PageSizeParam:
      in: query
      name: size
      required: false
      schema:
        type: integer
        maximum: 1000
        default: 100
        minimum: 100
    AuditRun_TagAccountVariableList_PageSizeParam:
      in: query
      name: size
      required: false
      schema:
        type: integer
        maximum: 100
        default: 50
        minimum: 50
    AuditRun_TagAccountVariableValueList_PageSizeParam:
      in: query
      name: size
      required: false
      schema:
        type: integer
        maximum: 1000
        default: 100
        minimum: 100
    AuditRun_PageSummary_PageSortParam:
      in: query
      name: sortBy
      required: false
      schema:
        $ref: '#/components/schemas/AuditRun_PageSummary_PagesSortColumn'
    AuditRun_TagInventory_PagesSortParam:
      name: sortBy
      in: query
      required: false
      schema:
        $ref: '#/components/schemas/AuditRun_TagInventory_PagesSortColumn'
    AuditRun_TagHealth_PagesSortParam:
      name: sortBy
      in: query
      required: false
      schema:
        $ref: '#/components/schemas/AuditRun_TagHealth_PageSortColumn'
    AuditRun_TagDuplicatesAndMultiples_PagesSortParam:
      name: sortBy
      in: query
      required: false
      schema:
        $ref: >-
          #/components/schemas/AuditRun_TagDuplicatesAndMultiples_PagesSortColumn
    AuditRun_VariableInventory_PagesSortParam:
      in: query
      name: sortBy
      required: false
      schema:
        $ref: '#/components/schemas/AuditRun_VariableInventory_PagesSortColumn'
    AuditRun_Page_RequestLog_PageSizeParam:
      in: query
      name: size
      required: false
      schema:
        type: integer
        maximum: 1000
        default: 50
        minimum: 50
    AuditRun_CookieList_PageSizeParam:
      in: query
      name: size
      required: false
      schema:
        type: integer
        maximum: 1000
        default: 100
        minimum: 100
    AuditRun_CookieInventory_PagesSortParam:
      name: sortBy
      in: query
      required: false
      schema:
        $ref: '#/components/schemas/AuditRun_CookieInventory_PageSortColumn'
    AuditRun_CookieInventory_DomainsSortParam:
      name: sortBy
      in: query
      required: false
      schema:
        $ref: '#/components/schemas/AuditRun_CookieInventory_DomainSortColumn'
    AuditRun_BrowserLogs_PagesSortParam:
      name: sortBy
      in: query
      required: false
      schema:
        $ref: '#/components/schemas/AuditRun_BrowserLogs_PagesSortColumn'
    AuditRun_CookiePrivacy_PagesSortParam:
      name: sortBy
      in: query
      required: false
      schema:
        $ref: '#/components/schemas/AuditRun_CookiePrivacy_PagesSortColumn'
    AuditRun_TagPrivacy_PagesSortParam:
      name: sortBy
      in: query
      required: false
      schema:
        $ref: '#/components/schemas/AuditRun_TagPrivacy_PagesSortColumn'
    AuditRun_RequestPrivacy_PagesSortParam:
      name: sortBy
      in: query
      required: false
      schema:
        $ref: '#/components/schemas/AuditRun_RequestPrivacy_PagesSortColumn'
    AuditRun_Trends_DaysParam:
      name: days
      in: query
      required: true
      schema:
        type: integer
        description: Number of days to get trend values for, relative to current time
        maximum: 390
        minimum: 1
    RunData_PageSizeParam:
      in: query
      name: size
      required: false
      schema:
        type: integer
        maximum: 1500
        default: 100
        minimum: 100
    AuditRun_RequestDomainGeoList_PageSizeParam:
      in: query
      name: size
      required: false
      schema:
        type: integer
        maximum: 1000
        default: 100
        minimum: 100
    AuditRun_FileChangesList_PageSizeParam:
      in: query
      name: size
      required: false
      schema:
        type: integer
        maximum: 200
        default: 50
        minimum: 50
    Cookies_GetInsightsParam:
      in: query
      name: getInsights
      schema:
        type: boolean
      required: false
      example: true
    Cookies_GetOriginsParam:
      in: query
      name: getOrigins
      description: If `true` then origin story will be returned for each cookie
      schema:
        type: boolean
      required: false
      example: true
    Cookies_HidePreAuditActionOnlyCookiesParam:
      in: query
      name: hidePreAuditActionOnlyCookies
      description: >-
        If `true` then cookies which were only changed during pre-audit actions
        will be hidden
      schema:
        type: boolean
        default: false
      required: false
      example: true
    RuleSnapshotId:
      name: ruleSnapshotId
      in: path
      required: true
      description: Rule snapshot ID
      schema:
        $ref: '#/components/schemas/RuleSnapshotId'
    AuditRun_Trends_DaysQP:
      name: days
      in: query
      required: true
      schema:
        type: integer
        description: Number of days to get trend values for, relative to current time
    Export_AllDataParam:
      in: query
      name: allData
      schema:
        type: boolean
        default: false
      required: false
      description: >-
        IF `false` THEN only one results page will be exported ELSE all data
        will be exported
    Export_NoLimitParam:
      in: query
      name: noLimit
      schema:
        type: boolean
        default: false
      required: false
      description: >-
        IF `false` or not specified THEN export will be limited to 1,000,000
        rows ELSE all data will be exported
    AuditRun_PageInfo_LinkDirection:
      name: linkDirection
      in: path
      required: true
      schema:
        $ref: '#/components/schemas/AuditRun_PageInfo_LinkDirection'
    AuditRun_PageInfo_LinkDownloadOptions:
      name: options
      description: Applicable to links from this page
      in: query
      style: form
      schema:
        type: array
        minItems: 1
        maxItems: 3
        items:
          $ref: '#/components/schemas/AuditRun_PageInfo_LinkDownloadOptionEnum'
    AuditRun_PageInfo_ThisUrlType:
      name: thisUrlType
      description: >
        Applicable to links to this page.

        - missing - links pointing to either initial or final url

        - `initial` - links pointing to initial url,

        - `final` - links pointing to final url, if there was no redirect, final
        url will be the the same as initial
      in: query
      schema:
        $ref: '#/components/schemas/AuditRun_PageInfo_ThisUrlTypeEnum'
    AccountUsageV2_ItemType:
      name: itemType
      in: path
      required: true
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/AccountUsageV2_ItemTypeEnum'
    PathParamAlertId:
      name: alertId
      in: path
      required: true
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/AlertId'
    PathParamAlertAssignmentItemType:
      name: itemType
      in: path
      required: true
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/AlertAssignmentItemTypeEnum'
    PathParamAlertAssignmentItemId:
      name: itemId
      in: path
      required: true
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/AlertAssignmentItemId'
    QueryParamAlertAssignmentsPageSize:
      in: query
      name: size
      required: false
      allowEmptyValue: false
      schema:
        type: integer
        maximum: 1000
        default: 50
        minimum: 50
    QueryParamAlertAssignmentsSort:
      in: query
      name: sortBy
      required: false
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/AlertAssignmentsSortColumn'
    QueryParamAlertsSearchPageSize:
      in: query
      name: size
      required: false
      allowEmptyValue: false
      schema:
        type: integer
        maximum: 1000
        default: 50
        minimum: 50
    QueryParamLiveResultsSortByPageColumn:
      in: query
      name: sortBy
      required: false
      schema:
        $ref: '#/components/schemas/PagesLiveResultsSortColumn'
    QueryParamLiveResultsSortByTagColumn:
      in: query
      name: sortBy
      required: false
      schema:
        $ref: '#/components/schemas/TagsLiveResultsSortColumn'
    QueryParamLiveResultsSortByCookieColumn:
      in: query
      name: sortBy
      required: false
      schema:
        $ref: '#/components/schemas/CookiesLiveResultsSortColumn'
    QueryParamLiveResultsSortByAccessibilityIssuesColumn:
      in: query
      name: sortBy
      required: false
      schema:
        $ref: '#/components/schemas/AccessibilityIssuesLiveResultsSortColumn'
    EmailInboxMessageId:
      in: path
      name: messageId
      required: true
      allowEmptyValue: false
      schema:
        type: number
  schemas:
    DateAndTime:
      type: string
      format: date-time
      description: >
        Date-time in [RFC3339 profile ISO 8601
        format](https://www.ietf.org/rfc/rfc3339.txt) with

        the following additional restrictions:

        1. An uppercase T must separate the date and time portions.

        2. An uppercase Z must denote that a numeric time zone offset isn't
        present.


        In general, these timestamp requirements are the same in

        [AWS Step Functions - Choice
        Rules](https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-choice-state.html)
      example: '2016-08-18T17:33:00Z'
    DateUtc:
      type: string
      format: date
      description: Date in ISO 8601 format, in UTC timezone
    AccountId:
      type: integer
      description: ID of an account
      example: 123
    UserId:
      type: integer
      description: ID of a user
      example: 123
    User:
      type: object
      required:
        - id
        - userName
      properties:
        id:
          $ref: '#/components/schemas/UserId'
        userName:
          type: string
    FolderId:
      type: integer
      format: integer
      description: ID of a folder
      example: 123
    DomainId:
      type: integer
      format: integer
      description: ID of a domain
      example: 123
    ItemType:
      type: string
      enum:
        - audit
        - web_journey
        - app_journey
        - live_connect
    ItemId:
      type: integer
      format: int64
      description: ID of a data collector, see ItemType
      example: 107239
    WebJourneyId:
      type: integer
      format: int64
      example: 107239
    AppJourneyId:
      type: integer
      format: int64
      example: 107239
    ManualJourneyId:
      type: integer
      format: int64
      example: 107239
    AuditId:
      type: integer
      format: int64
      example: 107239
    AthenaQueryRequestId:
      type: string
      pattern: \S+
      minLength: 1
      maxLength: 128
      example: 7dda25df-580d-4c6b-afc9-a9e87d33f83a
    RunId:
      type: integer
      format: int64
      example: 33010
    PageId:
      type: string
      example: f9d32cc7cc2046d6decb145a80289287f5226323
    ActionId:
      type: integer
      format: int64
      example: 107239
    ActionSequenceId:
      type: integer
      format: int64
      example: 107239
    PageUrl:
      type: string
      format: url
      example: https://example.com/about
    PageLoadTime:
      type: integer
      description: Time page took to load, in milliseconds
    PageStatusCode:
      type: integer
      description: Page HTTP status code
    TagId:
      type: integer
      description: Tag ID
    TagName:
      type: string
      description: Tag name
    TagAccount:
      type: string
      description: Tag account
    TagCategoryId:
      type: integer
      description: Tag category ID
    TagCategoryName:
      type: string
      description: Name of a category of a tag
    TagVendorId:
      type: integer
      description: Tag vendor ID
    TagLoadTime:
      type: integer
      description: Tag load time, in milliseconds
      default: 0
    TagRequestSize:
      type: integer
      description: Tag network request size, in bytes
    VariableName:
      type: string
      description: Variable name (key)
    VariableValue:
      type: string
      description: Variable value
    StringInclusionFilter:
      type: object
      required:
        - filterType
        - filterValue
      properties:
        filterType:
          $ref: '#/components/schemas/StringInclusionFilterTypeEnum'
        filterValue:
          type: string
          minLength: 1
    StringInclusionFilterTypeEnum:
      type: string
      enum:
        - contains
        - not_contains
    CurrencyCode:
      type: string
      description: A currency represented by its ISO 4217 alpha code
      pattern: ^[A-Z]{3}$
      example: USD
    MonetaryAmount:
      type: object
      description: A monetary amount
      required:
        - amount
        - currency
      properties:
        amount:
          type: number
          example: 0.01
        currency:
          $ref: '#/components/schemas/CurrencyCode'
    RuleSnapshotId:
      type: integer
      format: int64
    RulePageFilterSnapshotId:
      type: integer
      format: int64
    RuleTagSnapshotId:
      type: integer
      format: int64
    RuleTagVariableSnapshotId:
      type: integer
      format: int64
    MatchType:
      type: string
      enum:
        - Unknown
        - TagPresent
        - Equals
        - NotEqual
        - Contains
        - DoesNotContain
        - Regex
        - IsSet
        - NotSet
        - GreaterThanOrEquals
        - LessThanOrEquals
        - EqualIgnoreCase
        - NotEqualIgnoreCase
        - ContainsIgnoreCase
        - DoesNotContainIgnoreCase
    StatusCodeValueType:
      type: string
      enum:
        - Specific
        - SuccessAndRedirect
        - Broken
    RuleId:
      type: integer
      format: int64
    RuleStatus:
      type: string
      enum:
        - failed
        - passed
        - not_applied
    CookieName:
      type: string
      description: Cookie name
    CookieDomain:
      type: string
      description: Cookie domain; preceding dot removed
    CookiePartyType:
      type: string
      description: Indicates how much cookie domain is different from its page domain
      enum:
        - 1st_party
        - owned_3rd_party
        - 3rd_party
    CookieExpirationType:
      type: string
      enum:
        - session
        - timestamp
    CookieSameSite:
      type: string
      nullable: true
      enum:
        - None
        - Lax
        - Strict
    CookieSameSiteExtended:
      type: string
      nullable: true
      enum:
        - None
        - Lax
        - Strict
        - Empty
    CookieSize:
      type: integer
      description: Cookie value size, in bytes. May not be available for old runs
      nullable: true
    CookieChangeTypeEnum:
      type: string
      enum:
        - ADD
        - UPDATE
        - DELETE
        - NO_CHANGE
        - REPEAT_SET
    CookieOriginTypeEnum:
      type: string
      nullable: true
      enum:
        - PRE_AUDIT_ACTION
        - PAGE_LOAD
        - ON_PAGE_ACTION
    CookieInitiator:
      type: object
      properties:
        tagId:
          $ref: '#/components/schemas/TagId'
        initiatorType:
          type: string
          enum:
            - HTTP
            - APP
            - OP_ACTION
            - UNKNOWN
    CookiePartitionKey:
      type: object
      properties:
        value:
          type: string
    BrowserLogMessageLevelEnum:
      type: string
      enum:
        - error
        - warn
        - info
        - debug
        - other
    ConsentCategoryName:
      type: string
      description: Name of consent category item (tag, cookie, domain, geo) belongs to
    ConsentCategorySnapshotId:
      type: integer
      format: int64
      example: 33010
      description: >-
        Use in filtering purposes is DEPRECATED in favour of
        `ConsentCategoryId`! Snapshot Id of consent category attached to this
        run
    ConsentCategoryId:
      type: integer
      format: int64
      example: 3301
      description: ID of consent category
    ConsentCategoryComplianceStatus:
      type: string
      enum:
        - approved
        - unapproved
    RunHasNoConsentCategoriesAssigned:
      type: boolean
      description: |
        When TRUE, run did not have any consent categories assigned.
        When NOT specified or FALSE, it had at least one.
    RequestDomain:
      type: string
      description: Network request URL domain
      example: example.com
    RequestFilename:
      type: string
      description: Name of the file. Identified as the last non-empty part of URL path
      example: main.js
    CountryCode:
      type: string
      description: ISO 3166-1 (Alpha-2) country code
      example: US
    RequestOriginTypeEnum:
      type: string
      nullable: true
      enum:
        - PRE_AUDIT_ACTION
        - ON_PAGE
    ItemRunTrendsItemTrait:
      type: object
      required:
        - runId
        - completedAt
      properties:
        runId:
          $ref: '#/components/schemas/RunId'
        completedAt:
          $ref: '#/components/schemas/DateAndTime'
    AuditActionSnapshotId:
      type: integer
      format: int64
      minimum: 0
      description: >-
        An ID assigned to actions of all types on an audit - unique in the
        context of an individual run
    AuditRunPageTrait:
      description: Common trait for audit page with mandatory page properties
      type: object
      required:
        - pageId
        - pageUrl
      properties:
        pageId:
          $ref: '#/components/schemas/PageId'
        pageUrl:
          $ref: '#/components/schemas/PageUrl'
    AuditRunPageCommonColumnsTrait:
      description: Trait for audit page with common page properties
      allOf:
        - $ref: '#/components/schemas/AuditRunPageTrait'
        - type: object
          required:
            - pageLoadTime
            - pageStatusCode
          properties:
            pageLoadTime:
              $ref: '#/components/schemas/PageLoadTime'
            pageStatusCode:
              $ref: '#/components/schemas/PageStatusCode'
    AuditRunPageCommonColumnsWithFinalValuesTrait:
      description: Trait for audit page with final URL and final status code
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsTrait'
        - type: object
          properties:
            finalPageUrl:
              $ref: '#/components/schemas/PageUrl'
            finalPageStatusCode:
              $ref: '#/components/schemas/PageStatusCode'
    AuditRunRulePageCountTrait:
      description: Common trait for page count per rule result type attributes
      type: object
      required:
        - failedRulePageCount
        - passedRulePageCount
        - notAppliedRulePageCount
      properties:
        failedRulePageCount:
          type: integer
          description: Number of pages with at least 1 rule failed
          default: 0
        passedRulePageCount:
          type: integer
          description: Number of pages with at least 1 rule passed
          default: 0
        notAppliedRulePageCount:
          type: integer
          description: Number of pages with at least 1 rule not applied
          default: 0
    AuditRunRuleCountTrait:
      description: Common trait for rule count per rule result type attributes
      type: object
      required:
        - failedRuleCount
        - passedRuleCount
        - notAppliedRuleCount
      properties:
        failedRuleCount:
          type: integer
          description: Number of rules failed on at least 1 page
          default: 0
        passedRuleCount:
          type: integer
          description: Number of rules passed on at least 1 page
          default: 0
        notAppliedRuleCount:
          type: integer
          description: Number of rules not applied on at least 1 page
          default: 0
    TagInfoTrait:
      type: object
      description: Common tag info
      required:
        - tagId
        - tagName
        - tagCategoryId
        - tagCategoryName
      properties:
        tagId:
          $ref: '#/components/schemas/TagId'
        tagName:
          $ref: '#/components/schemas/TagName'
        tagCategoryId:
          $ref: '#/components/schemas/TagCategoryId'
        tagCategoryName:
          $ref: '#/components/schemas/TagCategoryName'
    IntegerRangeFilterTrait:
      type: object
      description: Common trait for integer min max filter
      properties:
        min:
          type: integer
          minimum: 0
        max:
          type: integer
    LongIntegerRangeFilterTrait:
      type: object
      description: Common trait for long integer min max filter
      properties:
        min:
          type: integer
          format: int64
          minimum: 0
        max:
          type: integer
          format: int64
    DoubleRangeFilterTrait:
      type: object
      description: Common trait for double min max filter
      properties:
        min:
          type: number
          format: double
          minimum: 0
        max:
          type: number
          format: double
    PageFiltersTrait:
      type: object
      description: Common trait for page filters
      properties:
        pageUrl:
          $ref: '#/components/schemas/PageUrlFilter'
        finalPageUrl:
          $ref: '#/components/schemas/PageUrlFilter'
        pageTitle:
          $ref: '#/components/schemas/PageTitleFilter'
        initialPageStatusCode:
          $ref: '#/components/schemas/IntegerFilter'
        finalPageStatusCode:
          $ref: '#/components/schemas/IntegerFilter'
        combinedPageStatusCode:
          $ref: '#/components/schemas/CombinedPageStatusCodeEnum'
        pageLoadTime:
          $ref: '#/components/schemas/PageLoadTimeFilter'
        pageSize:
          $ref: '#/components/schemas/PageSizeFilter'
        redirectCount:
          $ref: '#/components/schemas/PageRedirectCountFilter'
        hasBrokenLinks:
          type: boolean
        pageUrlMatchingAuditFilterConfiguration:
          type: boolean
    AggregatedCookieTrait:
      type: object
      description: >-
        Common trait for cookies from Cookie Inventory Cookies and Cookie
        Privacy Compliance
      properties:
        cookieChangedDuring:
          type: array
          description: >-
            List of phases during which this cookie was changed, aggregated
            across all pages
          minItems: 1
          items:
            $ref: '#/components/schemas/CookieOriginTypeEnum'
    CookieFiltersTrait:
      type: object
      description: Common trait for cookie filters
      properties:
        cookieOriginInclusion:
          $ref: '#/components/schemas/CookieOriginInclusionTypeEnum'
    PageUrlFilter:
      type: object
      required:
        - filterType
        - filterValue
      properties:
        filterType:
          $ref: '#/components/schemas/PageUrlFilterEnum'
        filterValue:
          type: string
          minLength: 1
        negated:
          type: boolean
          description: >-
            Switches from "contains" to "not contains", and from "matches regex"
            to "does not match regex". Supported only by Page Summary for now
          default: false
    PageUrlFilterEnum:
      type: string
      enum:
        - contains
        - regex
    PageTitleFilter:
      type: object
      required:
        - filterType
        - filterValue
      properties:
        filterType:
          $ref: '#/components/schemas/StringInclusionFilterTypeEnum'
        filterValue:
          type: string
          description: Page title as displayed by browser
          minLength: 1
          example: ObserveP
    PageLoadTimeFilter:
      description: >-
        Page load time in milliseconds. Should have `min` and/or `max`
        properties defined. `min` is inclusive and `max` is exclusive. `min`
        should be less than `max`.
      allOf:
        - $ref: '#/components/schemas/IntegerRangeFilterTrait'
    PageSizeFilter:
      description: >-
        Page size in bytes. Should have `min` and/or `max` properties defined.
        `min` is inclusive and `max` is exclusive. `min` should be less than
        `max`.
      allOf:
        - $ref: '#/components/schemas/LongIntegerRangeFilterTrait'
    PageRedirectCountFilter:
      description: >-
        Number of redirects for a page. Should have `min` and/or `max`
        properties defined. `min` is inclusive and `max` is exclusive. `min`
        should be less than `max`.
      allOf:
        - $ref: '#/components/schemas/IntegerRangeFilterTrait'
    CombinedPageStatusCodeEnum:
      type: string
      description: |
        - `broken` - initial or final URL are `broken`,
        - `good` - initial URL is `good` or `redirect` and final URL is `good`
      enum:
        - broken
        - good
    StatusCodeEnum:
      description: good - 2xx, redirects - 3xx, broken - all others
      deprecated: true
      type: string
      enum:
        - good
        - redirects
        - broken
    IntegerFilter:
      type: object
      required:
        - filterType
        - negated
      properties:
        filterType:
          $ref: '#/components/schemas/IntegerFilterTypeEnum'
        negated:
          type: boolean
          description: >-
            Switches from `==` to `!=`, and from `between [minInclusive,
            maxExclusive)` to `NOT between [minInclusive, maxExclusive)`
      discriminator:
        propertyName: filterType
        mapping:
          specific: '#/components/schemas/SpecificIntegerFilter'
          range: '#/components/schemas/IntegerRangeFilter'
    IntegerFilterTypeEnum:
      type: string
      enum:
        - specific
        - range
    SpecificIntegerFilter:
      allOf:
        - $ref: '#/components/schemas/IntegerFilter'
        - type: object
          required:
            - filterValue
          properties:
            filterValue:
              type: integer
    IntegerRangeFilter:
      allOf:
        - $ref: '#/components/schemas/IntegerFilter'
        - type: object
          required:
            - minInclusive
            - maxExclusive
          properties:
            minInclusive:
              type: integer
            maxExclusive:
              type: integer
    TagLoadTimeFilter:
      description: Should have `min` and/or `max` properties defined
      type: object
      properties:
        min:
          type: integer
          description: Minimum (inclusive) tag load time in milliseconds
          minimum: 0
        max:
          type: integer
          description: Maximum (exclusive) tag load time in milliseconds
    FoldersFilter:
      type: array
      description: >-
        non-empty array of folders with domains (subfolders), items from which
        will be included in response
      minItems: 1
      items:
        $ref: '#/components/schemas/FoldersFilterItem'
    FoldersFilterItem:
      type: object
      required:
        - folderId
      properties:
        folderId:
          $ref: '#/components/schemas/FolderId'
        domains:
          type: array
          description: >-
            null or empty array of domains (subfolders) present on an item,
            works as "null or empty if entire folder (all domains in a folder),
            otherwise specific domain IDs"
          items:
            $ref: '#/components/schemas/DomainId'
    CookieOriginInclusionTypeEnum:
      type: string
      description: >
        - `exclude_pre_audit_action_only_cookies` - exclude cookies which were
        only changed during pre-audit actions
      enum:
        - exclude_pre_audit_action_only_cookies
    ItemRun_SpecificTrendValuesDTO:
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/ItemRun_SpecificTrendValueItem'
    ItemRun_SpecificTrendValueItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - trendValue
          properties:
            trendValue:
              type: number
    CommonIterableResponseMetadata:
      description: Common metadata for iterable
      type: object
      required:
        - pagination
      properties:
        pagination:
          $ref: '#/components/schemas/PaginationMetadata'
    ExportId:
      type: integer
      format: int64
      description: Unique ID of an export
    ExportUuid:
      type: string
      format: uuid
      description: Unique ID of an export link
    ExportCenter_ExportedItemTypeEnum:
      type: string
      enum:
        - audit
        - web_journey
        - app_journey
        - live_connect
        - consent_categories
        - alert
        - account_usage
        - grid_data
    ExportCenter_ExportsSortColumn:
      type: string
      enum:
        - date_exported
        - item_name
        - run_date
        - export_name
        - exported_item_type
        - requested_by
        - status
        - is_scheduled
      default: date_exported
    ExportCenter_ExportsDTO:
      type: object
      required:
        - metadata
        - exports
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        exports:
          type: array
          items:
            $ref: '#/components/schemas/ExportCenter_ExportsItem'
    ExportCenter_ExportsItem:
      type: object
      description: >
        Not all exports are related to a particular
        audit/web-journey/app-journey/manual-journey item or its run, e.g.
        consent category configs export. Such exports do not have `itemType`,
        `itemId`, `itemName`, `runId`, `runDate`
      required:
        - exportId
        - dateExported
        - exportType
        - specificExportType
        - exportName
        - requestedByUserId
        - exportStatus
        - exportDownloadLink
      properties:
        exportId:
          $ref: '#/components/schemas/ExportId'
        dateExported:
          $ref: '#/components/schemas/DateAndTime'
        exportType:
          $ref: '#/components/schemas/ExportTypeEnum'
        itemType:
          $ref: '#/components/schemas/ExportCenter_ExportedItemTypeEnum'
        itemId:
          $ref: '#/components/schemas/ItemId'
        itemName:
          type: string
          description: Name of an item this export has been executed for, see ItemType
          example: My Audit
        runId:
          $ref: '#/components/schemas/RunId'
        runDate:
          $ref: '#/components/schemas/DateAndTime'
        specificExportType:
          type: string
          description: Specific export type, for example AuditRun_ExportTypeEnum for audits
        exportName:
          type: string
        requestedByUserId:
          $ref: '#/components/schemas/UserId'
        exportStatus:
          $ref: '#/components/schemas/ExportCenter_ExportStatus'
        exportDownloadLink:
          type: string
          description: Export file download link
          example: >-
            https://api.observepoint.com/v3/exports/550e8400-e29b-41d4-a716-446655440000
        scheduleId:
          $ref: '#/components/schemas/ScheduledExportId'
        isScheduled:
          type: boolean
          description: Whether the export is scheduled or not
          default: false
    ExportCenter_ExportStatus:
      type: string
      enum:
        - queued
        - in_progress
        - completed
        - failed
        - no_data
    ExportCenter_ResendExportEmailRequestDTO:
      type: object
      required:
        - toAddresses
      properties:
        toAddresses:
          type: array
          items:
            $ref: '#/components/schemas/EmailAddress'
          minItems: 1
          maxItems: 10
          description: list of unique emails
        customEmailMessage:
          type: string
          minLength: 1
          maxLength: 1000
          example: Here is the export, enjoy!
    EmailAddress:
      type: string
      format: email
      minLength: 3
      example: user@example.com
    ScheduledExportId:
      type: integer
      format: int64
    ScheduledExports_ExportedItemType:
      type: string
      enum:
        - saved_report
    ScheduledExports_ReportLinkType:
      type: string
      enum:
        - public_link
        - regular_link
    ScheduledExports_ExportedItemId:
      type: integer
      format: int64
    ScheduledExports_ExportFileFormat:
      type: string
      enum:
        - csv
        - tsv
        - xlsx
        - parquet
    ScheduledExports_SortColumn:
      type: string
      enum:
        - name
        - schedule_description
        - schedule_is_paused
        - owner_user_name
        - exported_item_type
        - exported_item_name
        - is_editable
        - created_at
        - updated_at
    ScheduledExports_ScheduleConfig:
      type: object
      description: When and how often Scheduled Export will be run.
      required:
        - dtStart
        - recurrenceRule
        - tzId
        - isPaused
      properties:
        dtStart:
          type: string
          format: local-date-time
          description: Date of first desired start (if in range of recurrence rule).
          example: '2025-03-14T12:00:00'
        recurrenceRule:
          type: string
          description: >-
            An RFC-5545 (https://www.rfc-editor.org/rfc/rfc5545#appendix-A)
            compliant recurrence rule string.
          example: WKST=SU;FREQ=DAILY;INTERVAL=1
        tzId:
          type: string
          description: >-
            Timezone identifier compliant with tz database (ex.
            America/New_York).
            https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
          example: America/New_York
        isPaused:
          type: boolean
          description: Whether the schedule is paused or not.
        exceptions:
          description: List of dates to skip when scheduling.
          type: array
          minItems: 1
          items:
            type: string
            format: local-date-time
            example: '2025-03-14T12:00:00'
    ScheduledExports_ScheduleConfigWithDescription:
      allOf:
        - $ref: '#/components/schemas/ScheduledExports_ScheduleConfig'
        - type: object
          required:
            - description
            - presetType
          properties:
            description:
              type: string
              example: Every day
            presetType:
              type: string
              example: DAILY
            nextExportAt:
              $ref: '#/components/schemas/DateAndTime'
    ScheduledExports_ExportEmailConfig:
      type: object
      description: Configuration for the email sent when export completes.
      required:
        - addExportFileAttachment
      properties:
        addExportFileAttachment:
          type: boolean
        customMessage:
          type: string
        reportLinkType:
          $ref: '#/components/schemas/ScheduledExports_ReportLinkType'
    ScheduledExports_CommonTrait:
      type: object
      required:
        - name
        - exportedItemType
        - exportedItemId
        - exportFileFormat
        - exportEmailConfig
        - emails
      properties:
        name:
          type: string
        exportedItemType:
          $ref: '#/components/schemas/ScheduledExports_ExportedItemType'
        exportedItemId:
          $ref: '#/components/schemas/ScheduledExports_ExportedItemId'
        exportFileFormat:
          $ref: '#/components/schemas/ScheduledExports_ExportFileFormat'
        exportEmailConfig:
          $ref: '#/components/schemas/ScheduledExports_ExportEmailConfig'
        emails:
          type: array
          description: List of email addresses that will receive export email.
          minItems: 1
          items:
            $ref: '#/components/schemas/EmailAddress'
    CreateScheduledExportRequestDTO:
      allOf:
        - $ref: '#/components/schemas/ScheduledExports_CommonTrait'
        - type: object
          required:
            - schedule
          properties:
            schedule:
              $ref: '#/components/schemas/ScheduledExports_ScheduleConfig'
    ScheduledExportDTO:
      allOf:
        - $ref: '#/components/schemas/ScheduledExports_CommonTrait'
        - type: object
          required:
            - id
            - schedule
            - exportedItemName
            - isEditable
          properties:
            id:
              $ref: '#/components/schemas/ScheduledExportId'
            createdAt:
              $ref: '#/components/schemas/DateAndTime'
            updatedAt:
              $ref: '#/components/schemas/DateAndTime'
            owner:
              $ref: '#/components/schemas/User'
            schedule:
              $ref: >-
                #/components/schemas/ScheduledExports_ScheduleConfigWithDescription
            exportedItemName:
              type: string
            isEditable:
              type: boolean
    ScheduledExportListDTO:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        scheduledExports:
          type: array
          items:
            $ref: '#/components/schemas/ScheduledExportDTO'
    AuditRunPage_ConsoleLogs_RequestDTO:
      type: object
      properties:
        includedLevels:
          type: array
          items:
            $ref: '#/components/schemas/BrowserLogMessageLevelEnum'
        search:
          type: string
          description: Filters logs by `message` and `source` with 'contains' predicate
    AuditRunPage_ConsoleLogsDTO:
      type: object
      required:
        - metadata
        - consoleLogs
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        consoleLogs:
          type: array
          items:
            $ref: '#/components/schemas/BrowserConsoleLog'
    ConsoleLogSummary:
      type: object
      required:
        - errorLogCount
        - warnLogCount
        - infoLogCount
        - debugLogCount
        - otherLogCount
      properties:
        errorLogCount:
          type: integer
        warnLogCount:
          type: integer
        debugLogCount:
          type: integer
        infoLogCount:
          type: integer
          example: 4
        otherLogCount:
          type: integer
    AuditRunPage_BrowserLogs_MessagesSortColumn:
      type: string
      enum:
        - message
        - timestamp
        - level
        - source
        - count
        - related_tag
    BrowserConsoleLog:
      type: object
      properties:
        timestamp:
          type: integer
          format: int64
          example: 1612568767911
        message:
          type: string
          example: 'loadscript added to queue: /path/to/example.js'
        level:
          $ref: '#/components/schemas/BrowserLogMessageLevelEnum'
        source:
          type: string
        count:
          type: integer
          example: 4
        relatedTag:
          $ref: '#/components/schemas/BrowserConsoleLogTagItem'
      required:
        - timestamp
        - message
        - level
        - count
    BrowserConsoleLogTagItem:
      allOf:
        - $ref: '#/components/schemas/TagInfoTrait'
    AuditRun_PageDetails_RequestLogSortColumn:
      type: string
      enum:
        - request_start_time
        - request_url
        - tag_name
        - mime_type
        - response_size
        - load_time
        - status_code
        - geo
        - date_difference
        - size_difference
        - started_at
    RequestLogDTO:
      type: object
      required:
        - metadata
        - requests
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        requests:
          type: array
          items:
            $ref: '#/components/schemas/RequestLog'
    RequestLog:
      type: object
      description: >-
        fileChange property is only available for customers who purchased
        privacy product offering
      required:
        - requestUrl
        - statusCode
        - loadTime
      properties:
        resourceType:
          type: string
          description: >-
            The type of resource that was requested.  e.g. 'xhr', 'script',
            'image', 'stylesheet', 'font', 'document', 'other'. Available since
            [WORK-24937](https://observepoint.atlassian.net/browse/WORK-24937)
        method:
          type: string
          description: The HTTP method used for the request
        serverIPAddress:
          type: string
          format: ipAddress
          description: The IP address of the server that responded to the request
        httpVersion:
          type: string
          description: The HTTP version used for the request (e.g. 'HTTP/1.1')
        requestUrl:
          type: string
        statusCode:
          type: integer
          description: HTTP status code of network request
        loadTime:
          type: number
          description: Time took for network request to execute, in milliseconds
        geoLocation:
          type: string
          deprecated: true
          description: >-
            Use `geoLocationInfo` property instead. It will be renamed to
            `geoLocation` soon
        geoLocationInfo:
          $ref: '#/components/schemas/RequestLogItemGeoLocation'
        tagId:
          type: integer
          deprecated: true
          description: Use `tag` property instead
        tag:
          $ref: '#/components/schemas/RequestLogItemTag'
        mimeType:
          type: string
        fileInfo:
          $ref: '#/components/schemas/RequestLogItemFileInfo'
        fileChange:
          $ref: '#/components/schemas/RequestLogItemFileChange'
        responseSizeBytes:
          type: integer
        origin:
          $ref: '#/components/schemas/RequestOriginTypeEnum'
        relatedCookies:
          type: array
          items:
            $ref: '#/components/schemas/CookieOriginRequestDTO'
        blockingResults:
          $ref: '#/components/schemas/RequestBlockingResults'
        startedAt:
          $ref: '#/components/schemas/DateAndTime'
        startedAtRelativeToPageNavigation:
          type: integer
          format: int64
    RequestBlockingResults:
      type: object
      description: >-
        (Optional) Present if the request was blocked. TagId and Tag Category Id
        not included here since RequestLog's tag will have that information.
      required:
        - blockReason
      properties:
        urlSignature:
          description: >-
            (Optional) Present if the blockedReason is `url_signature`. We do
            not expose tag signatures to clients.
          type: string
        blockReason:
          $ref: '#/components/schemas/RequestBlockingReason'
    RequestBlockingReason:
      type: string
      enum:
        - tag_id
        - tag_category
        - url_signature
    RequestLogItemTag:
      allOf:
        - $ref: '#/components/schemas/TagInfoTrait'
    RequestLogItemGeoLocation:
      type: object
      required:
        - countryCode
        - countryName
      properties:
        countryCode:
          $ref: '#/components/schemas/CountryCode'
        countryName:
          type: string
    RequestLogItemFileInfo:
      type: object
      required:
        - filename
        - requestDomain
      properties:
        lastModifiedDate:
          $ref: '#/components/schemas/DateAndTime'
        filename:
          $ref: '#/components/schemas/RequestFilename'
        requestDomain:
          $ref: '#/components/schemas/RequestDomain'
    RequestLogItemFileChange:
      type: object
      description: >
        Available only for JavaScript files for now. Provided only for customers
        that have Privacy features available.
      required:
        - fileChangeType
      properties:
        fileChangeType:
          $ref: '#/components/schemas/AuditRun_FileChanges_FileChangeType'
        largestDateDifference:
          $ref: '#/components/schemas/AuditRun_FileChanges_DateDifferenceInMinutes'
        largestSizeDifference:
          $ref: '#/components/schemas/AuditRun_FileChanges_SizeDifferenceInBytes'
    TagInfoDTO:
      type: array
      items:
        $ref: '#/components/schemas/TagInfo'
    TagInfoDTOWithInsights:
      type: object
      properties:
        pageTagInsights:
          $ref: '#/components/schemas/TagInsights'
        pageTags:
          $ref: '#/components/schemas/TagInfoDTO'
    TagInsights:
      type: object
      properties:
        noOfTagRequests:
          type: integer
        noOfUniqueTags:
          type: integer
        noOfBrokenTags:
          type: integer
    TagInfo:
      type: object
      properties:
        name:
          type: string
        category:
          type: string
        tagId:
          type: integer
        pageTagInstances:
          type: array
          items:
            $ref: '#/components/schemas/TagInstance'
        relatedCookies:
          type: array
          items:
            $ref: '#/components/schemas/CookieOriginRequestDTO'
        tagRequestCount:
          type: integer
          description: Total number of tag requests on a page for given tag
        tagDuplicateRequestCount:
          type: integer
          description: Number of duplicate tag requests for given tag
        tagMultipleRequestCount:
          type: integer
          description: >-
            Number of multiple tag requests for given tag (tag requests that are
            not exact copies of each other and have the same account)
        tagUniqueRequestCount:
          type: integer
          description: Number of tag requests that do not have duplicates or multiples
    TagInstance:
      type: object
      properties:
        tagInstanceId:
          type: string
        account:
          type: string
        bytes:
          type: integer
        loadTime:
          type: integer
          format: int64
        duplicates:
          type: integer
        multiples:
          type: integer
        statusCode:
          type: integer
        tagInstanceVariables:
          type: array
          items:
            $ref: '#/components/schemas/Variable'
        relatedCookies:
          type: array
          items:
            $ref: '#/components/schemas/CookieOriginRequestDTO'
    Variable:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
    SparkLinesDTO:
      type: array
      items:
        $ref: '#/components/schemas/SparkLineDTO'
    SparkLineDTO:
      type: object
      properties:
        runId:
          type: number
        runCompletionDate:
          type: string
          format: date-time
        pageInsights:
          $ref: '#/components/schemas/SparkLinePageInsights'
    SparkLinePageInsights:
      type: object
      properties:
        loadTime:
          type: number
        statusCode:
          type: number
        size:
          type: number
    PageTrendsDTO:
      type: array
      items:
        $ref: '#/components/schemas/PageTrendDTO'
    PageTrendDTO:
      type: object
      properties:
        runId:
          type: integer
          format: int64
        runCompletionDate:
          type: string
          format: date-time
        trendName:
          type: string
        trendValue:
          type: integer
          format: int64
    PageSummaryTrendsDTO:
      type: object
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/PageSummaryTrendDTO'
    PageSummaryTrendDTO:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          properties:
            trendValue:
              type: integer
    AuditPage:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/PageId'
        url:
          type: string
        loadTime:
          type: number
        statusCode:
          type: integer
        size:
          type: number
    PageInfo:
      type: object
      properties:
        url:
          type: string
          deprecated: true
          description: Deprecated - use `initialPageUrl` instead
        initialPageUrl:
          type: string
          description: >-
            Initial page URL - before the first redirect. If there were no
            redirects, equal to `finalPageUrl`
        loadTime:
          type: number
        statusCode:
          type: integer
          deprecated: true
          description: Deprecated - use `initialStatusCode` instead
          example: 200
        initialStatusCode:
          type: integer
          description: >-
            Initial page status code - before the first redirect. If there were
            no redirects, equal to `finalStatusCode`
        size:
          type: number
        screenshot:
          type: string
        parent:
          type: object
          properties:
            pageId:
              type: string
            pageUrl:
              type: string
        finalPageUrl:
          type: string
          example: https://example.com/some-path
          description: >-
            Final page URL - after all redirects. If there were no redirects,
            equal to `initialPageUrl`
          maxLength: 11264
        finalStatusCode:
          type: integer
          description: >-
            Final status code - after all redirects. If there were no redirects,
            equal to `initialStatusCode`
          example: 302
        title:
          type: object
          description: Page title as displayed by browser
          example: My Cards - ObservePoint
        browserError:
          type: string
          description: error produced by browser upon opening the page
          example: >-
            This site can’t be reached. example.com’s server IP address could
            not be found. ERR_NAME_NOT_RESOLVED
        visitStartTimestamp:
          type: integer
          format: int64
          description: timestamp - GMT in milliseconds
          example: 1637944293
        visitEndTimestamp:
          type: integer
          format: int64
          description: timestamp - GMT in milliseconds
          example: 1637944293
        redirects:
          type: array
          description: NULL if page had no redirects. Does not include final page
          maxItems: 100
          items:
            $ref: '#/components/schemas/AuditRun_PageInfo_RedirectChainElement'
        links:
          $ref: '#/components/schemas/AuditRun_PageInfo_LinkSummary'
        onPageActionResults:
          description: >-
            (Optional) Present if failure/s is/are present in On-Page Actions
            execution
          type: array
          minItems: 1
          items:
            $ref: '#/components/schemas/AuditActionResult'
        blockedRequestSummary:
          $ref: '#/components/schemas/RequestBlockingSummary'
        webVitalsSummary:
          $ref: '#/components/schemas/WebVitalsSummary'
        accessibilityChecksSummary:
          $ref: '#/components/schemas/AccessibilityChecksResults'
    AccessibilityChecksResults:
      type: object
      required:
        - configurationTags
        - issues
      properties:
        configurationTags:
          description: >-
            The tags used for the run configuration that indicate both version
            and conformance level
          type: array
          items:
            type: string
            description: The conformance levels of the checks
          example:
            - wcag2a
            - wcag21aa
            - wcag2aaa
            - wcag2aa
            - wcag21a
            - wcag22aa
        scores:
          $ref: '#/components/schemas/PageAccessibilityScores'
        issues:
          type: array
          items:
            $ref: '#/components/schemas/AccessibilityRuleResult'
        inconclusive:
          description: The accessibility checks that were inconclusive
          type: array
          items:
            $ref: '#/components/schemas/AccessibilityRuleResult'
          example:
            - id: color-contrast
              impact: serious
              description: Elements must meet enhanced color contrast ratio thresholds
              help: Elements must meet enhanced color contrast ratio thresholds
              helpUrl: https://www.w3.org/WAI/WCAG21/Understanding/contrast-enhanced
              htmlElements:
                - html: >-
                    <span class='fl-heading-text'>Validate Your Privacy, Landing
                    Pages, and Analytics</span>
                  htmlCssSelectors:
                    - h1
                    - .fl-heading-text
                  failureSummary: >-
                    Fix any of the following: Element's background color could
                    not be determined due to a background image
    PageAccessibilityScores:
      type: object
      description: >-
        The accessibility scores for the page based on different WCAG versions
        and conformance levels
      required:
        - wcag2a
        - wcag2aa
        - wcag2aaa
        - wcag21a
        - wcag21aa
        - wcag21aaa
        - wcag22a
        - wcag22aa
        - wcag22aaa
      properties:
        wcag2a:
          $ref: '#/components/schemas/PageScoreValue'
        wcag2aa:
          $ref: '#/components/schemas/PageScoreValue'
        wcag2aaa:
          $ref: '#/components/schemas/PageScoreValue'
        wcag21a:
          $ref: '#/components/schemas/PageScoreValue'
        wcag21aa:
          $ref: '#/components/schemas/PageScoreValue'
        wcag21aaa:
          $ref: '#/components/schemas/PageScoreValue'
        wcag22a:
          $ref: '#/components/schemas/PageScoreValue'
        wcag22aa:
          $ref: '#/components/schemas/PageScoreValue'
        wcag22aaa:
          $ref: '#/components/schemas/PageScoreValue'
    PageScoreValue:
      type: number
      format: double
      description: Page accessibility score in %, 1 digit after decimal point
      minimum: 0
      maximum: 100
    AccessibilityRuleResult:
      type: object
      required:
        - id
        - impact
        - description
        - help
        - wcagVersion
        - wcagConformanceLevel
        - successCriteria
        - htmlElements
      properties:
        id:
          type: string
          description: The unique identifier for the evaluated rule
        impact:
          type: string
          description: The impact of the issue
          enum:
            - minor
            - moderate
            - serious
            - critical
        description:
          type: string
          description: The description of the issue
        help:
          type: string
          description: The help text for the issue
          example: Elements must meet enhanced color contrast ratio thresholds
        wcagVersion:
          type: string
          description: The WCAG version that the issue is associated with
          example: '2.1'
        wcagConformanceLevel:
          type: string
          description: The WCAG conformance level that the issue is associated with
          example: AA
        successCriteria:
          description: List of success criteria that the issue is associated with
          type: array
          items:
            $ref: '#/components/schemas/AccessibilitySuccessCriteria'
        htmlElements:
          type: array
          items:
            $ref: '#/components/schemas/AccessibilityTestedElement'
          minItems: 1
    AccessibilityTestedElement:
      type: object
      required:
        - html
      properties:
        failureSummary:
          type: string
          description: Summary of all rule criteria which failed and needs to be resolved.
          example: >-
            Fix any of the following: Element has insufficient color contrast of
            6.14 (foreground color: #5d5d5d, background color: #f7f7f7, font
            size: 12.0pt (16px), font weight: normal). Expected contrast ratio
            of 7:1
        fixOneOf:
          type: array
          description: >-
            List of rule criteria where at least one must pass for the rule to
            be considered passing.
          items:
            type: string
        fixAllOf:
          type: array
          description: >-
            List of rule criteria where all must pass for the rule to be
            considered passing.
          items:
            type: string
        doNoneOf:
          type: array
          description: >-
            List of rule criteria where all must not pass for the rule to be
            considered passing.
          items:
            type: string
        html:
          type: string
          description: The html for the node
          example: >-
            <span style='font-weight: 400;'>(without 10 new QA
            headcount.)</span>
        htmlCssSelectors:
          description: The html/css selector for the issue
          type: array
          items:
            type: string
        shadowDomCssSelectors:
          description: >-
            This points to an element in a shadow DOM and each item (except the
            n-1th) in this array is a selector to a DOM element with a shadow
            DOM. The last element in the array points to the final node within
            the shadow DOM.
          type: array
          items:
            type: array
            items:
              type: string
    AccessibilitySuccessCriteria:
      type: object
      required:
        - wcagSuccessCriteria
      properties:
        wcagSuccessCriteria:
          type: string
          description: The WCAG success criteria that the issue is associated with
          example: 1.4.6
        w3Link:
          type: string
          description: The link to the W3 page for the issue
          example: https://www.w3.org/WAI/WCAG21/Understanding/contrast-enhanced
    WebVitalsSummary:
      type: object
      description: Google's Web Vitals metrics for a given page
      required:
        - largestContentfulPaint
        - cumulativeLayoutShift
        - firstContentfulPaint
        - timeToFirstByte
      properties:
        largestContentfulPaint:
          $ref: '#/components/schemas/WebVitalDetails'
        cumulativeLayoutShift:
          $ref: '#/components/schemas/WebVitalDetails'
        firstContentfulPaint:
          $ref: '#/components/schemas/WebVitalDetails'
        timeToFirstByte:
          $ref: '#/components/schemas/WebVitalDetails'
    WebVitalDetails:
      type: object
      description: Specific details for a given Web Vital
      required:
        - pass
        - warnThreshold
        - failThreshold
      properties:
        value:
          type: number
          format: double
          description: The value of the Web Vital.  May also be null.
          example: 1234.56
        pass:
          type: boolean
          description: Whether the Web Vital is beneath the warning threshold
        warnThreshold:
          type: number
          format: double
          description: The threshold for the vital to be in a warning state
          example: 1234
        failThreshold:
          type: number
          format: double
          description: The threshold for the vital to be in a fail state
          example: 1234
    RequestBlockingSummary:
      type: object
      description: >-
        (Optional) Present if `withBlockedRequestSummary` query parameter is
        true.
      required:
        - blockedRequests
      properties:
        blockedRequests:
          type: boolean
          description: >-
            Indicates if there was at least one request blocked due to Blocking
            Configuration
    AuditFailureResults:
      type: object
      required:
        - preAuditActionResults
      properties:
        preAuditActionResults:
          $ref: '#/components/schemas/PreAuditActionResults'
        onPagesActionResults:
          $ref: '#/components/schemas/OnPagesActionResults'
        startingUrlResults:
          $ref: '#/components/schemas/StartingUrlResults'
    PreAuditActionResults:
      type: object
      required:
        - zeroAndOut
      properties:
        zeroAndOut:
          description: >-
            Indicates whether pre-audit actions failed executing in all
            allocated engine containers.
          type: boolean
        preAuditActionFailures:
          type: array
          minItems: 1
          items:
            $ref: '#/components/schemas/AuditActionResult'
          description: >
            Pre-audit action results failures. A a set of failed actions with
            their failure messages.

            Uniqueness is determined by the combination of `failureMessage` and
            `auditActionSnapshotId`.
    OnPagesActionResults:
      description: >-
        (Optional) Present if failure/s is/are present for any Page's On-Page
        Actions execution
      type: object
      required:
        - totalConfiguredCount
        - totalFailedCount
        - resultsSample
      properties:
        totalConfiguredCount:
          type: integer
          description: >-
            Total number of pages configured with On-Page Actions for the Audit
            run
        totalFailedCount:
          type: integer
          description: Total number of Pages in the Audit run with On-Page Action failures
        resultsSample:
          description: A sample of On-Page actions failures.
          type: array
          minItems: 1
          maxItems: 3
          items:
            $ref: '#/components/schemas/OnPagesActionResultItem'
    OnPagesActionResultItem:
      type: object
      required:
        - pageUrl
        - results
      properties:
        pageUrl:
          type: string
        results:
          type: array
          items:
            $ref: '#/components/schemas/AuditActionResult'
    StartingUrlResults:
      type: object
      description: |
        Provide information for the following use cases:
          One and Out - All starting URLs failed to launch
          One and Out - All links found were excluded by filters
      required:
        - failureType
      properties:
        failureType:
          description: |
            Possible types:
              - `no_links_scanned_one_and_out` All conditions must be met:
                1. Number of scanned pages matches number of starting URLs
                2. Scan limit is higher than number of scanned pages
                3. At least 1 link has been excluded.
              - `all_starting_urls_failed_one_and_out` Flag indicating if all starting Urls failed navigation. 
                Navigation resulted in status codes:
                 - zero
                 - 403 
                 - 500+
                Details for this data is available from the page summary pages endpoint
              - `all_starting_urls_failed_zero_and_out` Flag indicating if all starting Urls failed navigation but without records.
          type: string
          enum:
            - no_links_scanned_one_and_out
            - all_starting_urls_failed_one_and_out
            - all_starting_urls_failed_zero_and_out
        linksExcludedSample:
          description: >
            (Optional) Present if failureType is `no_links_scanned_one_and_out` 

            A sample of links found from starting URLs that were excluded from
            the audit.
          type: array
          minItems: 1
          maxItems: 10
          items:
            $ref: '#/components/schemas/PageUrl'
        startingUrlFailures:
          description: >-
            (Optional) Present when `all_starting_urls_failed_one_and_out` is
            true
          type: array
          items:
            $ref: '#/components/schemas/StartingUrlFailureItem'
    StartingUrlFailureItem:
      required:
        - statusCode
        - pageCount
      properties:
        statusCode:
          $ref: '#/components/schemas/PageStatusCode'
        pageCount:
          type: integer
        browserError:
          type: string
          description: error produced by browser upon opening the page
          example: >-
            This site can’t be reached. example.com’s server IP address could
            not be found. ERR_NAME_NOT_RESOLVED
    AuditActionResult:
      type: object
      required:
        - auditActionSnapshotId
        - failureMessage
      properties:
        auditActionSnapshotId:
          $ref: '#/components/schemas/AuditActionSnapshotId'
        failureMessage:
          type: string
    UrlMatchingAuditConfigurationFilterValidationResult:
      type: object
      required:
        - totalFilterCount
        - totalAppliedFilterCount
        - maxAllowedFilterCount
        - includeFilters
        - excludeFilters
      properties:
        totalFilterCount:
          description: >-
            Total number of audit page filters configured in particular audit
            run.
          type: integer
        totalAppliedFilterCount:
          description: >
            Number of audit page filters which would be applied for
            `pageUrlMatchingAuditFilterConfiguration` REPORT filter.
          type: integer
        maxAllowedFilterCount:
          description: >
            Maximum number of audit page filters
            `pageUrlMatchingAuditFilterConfiguration` REPORT filter will use.

            Only firsts `maxAllowedFiltersCount` filters will be used.
          type: integer
        includeFilters:
          $ref: '#/components/schemas/UrlMatchingAuditConfigurationFiltersInfo'
        excludeFilters:
          $ref: '#/components/schemas/UrlMatchingAuditConfigurationFiltersInfo'
    UrlMatchingAuditConfigurationFiltersInfo:
      description: >-
        Information about not applied filters of specific type
        (INCLUDE|EXCLUDE).
      type: object
      required:
        - totalCount
        - appliedCount
        - notApplied
      properties:
        totalCount:
          description: Total number of audit page filters of specific type
          type: integer
        appliedCount:
          description: Number of applied audit page filters of specific type
          type: integer
        notApplied:
          description: Not applied audit page filters of specific type grouped by reason
          type: array
          minItems: 0
          maxItems: 2
          items:
            $ref: >-
              #/components/schemas/NotAppliedUrlMatchingAuditConfigurationFilters
    NotAppliedUrlMatchingAuditConfigurationFilters:
      type: object
      required:
        - count
        - reason
        - filters
      properties:
        count:
          description: Number of not applied audit page filters of specific type and reason
          type: integer
        reason:
          $ref: >-
            #/components/schemas/UrlMatchingAuditConfigurationFilterNotAppliedReasonEnum
        filters:
          description: List of not applied audit page filters (limited to 50)
          type: array
          minItems: 0
          maxItems: 50
          items:
            type: string
    UrlMatchingAuditConfigurationFilterNotAppliedReasonEnum:
      type: string
      enum:
        - MAX_ALLOWED_FILTERS_LIMIT_EXCEEDED
        - UNSUPPORTED_REGEX_SEQUENCES
    PageErrorsFilter:
      type: object
      description: >
        non-empty list of kinds of errors present on a page, depends on
        `filterType`:

        - `ALL`: page has all types of errors specified in `errorTypes` list

        - `ANY`: page has any type of errors present in specified `errorTypes`
        list
      required:
        - filterType
        - errorTypes
      properties:
        filterType:
          $ref: '#/components/schemas/PageErrorsFilterTypeEnum'
        errorTypes:
          type: array
          minItems: 1
          items:
            $ref: '#/components/schemas/PageErrorTypeEnum'
    PageErrorsFilterTypeEnum:
      type: string
      enum:
        - ALL
        - ANY
    PageErrorTypeEnum:
      type: string
      enum:
        - ON_PAGE_ACTION_ERROR
    AuditRun_PageInfo_LinkSummary:
      type: object
      required:
        - linkToInitialUrlCount
        - linkToFinalUrlCount
      properties:
        linkToInitialUrlCount:
          type: integer
          example: 32
        linkToFinalUrlCount:
          type: integer
          example: 12
        linksFromThisPageV2:
          type: object
          required:
            - scannedInternalSuccessfulPageCount
            - scannedInternalBrokenPageCount
            - scannedExternalSuccessfulPageCount
            - scannedExternalBrokenPageCount
            - unscannedInternaLinkCount
            - unscannedExternaLinkCount
          properties:
            scannedInternalSuccessfulPageCount:
              type: integer
            scannedInternalBrokenPageCount:
              type: integer
            scannedExternalSuccessfulPageCount:
              type: integer
            scannedExternalBrokenPageCount:
              type: integer
            unscannedInternaLinkCount:
              type: integer
            unscannedExternaLinkCount:
              type: integer
    AuditRun_PageInfo_RedirectChainElement:
      type: object
      required:
        - statusCode
        - url
        - type
      properties:
        statusCode:
          type: integer
          example: 302
        url:
          type: string
          example: https://example.com
          maxLength: 11264
        type:
          $ref: '#/components/schemas/BrowserRedirectType'
    BrowserRedirectType:
      type: string
      enum:
        - SERVER_SIDE
        - CLIENT_SIDE
    AuditRun_PageInfo_LinkDirection:
      type: string
      enum:
        - to_this_page
        - from_this_page
    AuditRun_PageInfo_LinkDownloadOptionEnum:
      type: string
      enum:
        - to_internal_pages
        - to_external_pages
        - to_urls_not_audited
    AuditRun_PageInfo_ThisUrlTypeEnum:
      type: string
      enum:
        - initial
        - final
    AuditRun_PageInfo_LinksDTO:
      type: object
      required:
        - links
      properties:
        links:
          type: array
          maxItems: 1000
          items:
            $ref: '#/components/schemas/AuditRun_PageInfo_LinkItem'
    AuditRun_PageInfo_LinkItem:
      type: object
      required:
        - initial_page_url
        - initial_page_status_code
        - final_page_url
        - final_page_status_code
        - page_linked_from_url
        - outer_html
      properties:
        initial_page_url:
          type: string
          description: URL initially opened by engine
        initial_page_status_code:
          type: integer
          description: Initial status code observed by engine
        final_page_url:
          type: string
          description: >-
            Final URL after all redirects. If no redirects, equal to
            `initial_page_url`
        final_page_status_code:
          type: integer
          description: >-
            Final status code observed by engine after all redirects. If no
            redirects, equal to `initial_page_status_code`
        page_linked_from_url:
          type: string
          description: URL of another page that has link to this page
        outer_html:
          type: string
          maxLength: 500
          example: >-
            <a href='https://www.iana.org/domains/example'>More
            information...</a>
    AuditRun_PageDetails_TrendsEnum:
      type: string
      enum:
        - pageSize
        - pageLoadTime
      example: pageSize
    FileMappingMatchTypeEnum:
      type: integer
      enum:
        - 1
        - 2
      description: 1 - success, 2 - failure
    FileMappingResultsDTO:
      type: object
      properties:
        remoteFileMappingId:
          type: integer
        match:
          type: string
        matchType:
          $ref: '#/components/schemas/FileMappingMatchTypeEnum'
        fileUrl:
          type: string
        mappedRequests:
          type: array
          items:
            type: string
    AuditRun_Pages_DTO:
      description: DTO returning pages of a particular run in paged way.
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/AuditPage'
    AuditRun_PagesSort:
      description: possible ways to sort pages in a given run
      type: string
      enum:
        - url
        - load_time
        - status_code
        - size
    CookieDTO:
      type: object
      properties:
        name:
          type: string
        domain:
          type: string
      description: Cookie name and domain
    CookieTrait:
      type: object
      required:
        - name
        - value
        - domain
        - path
        - httpOnly
        - secure
        - sameSite
        - expires
      properties:
        name:
          type: string
        value:
          type: string
        domain:
          type: string
        path:
          type: string
        httpOnly:
          type: boolean
        secure:
          type: boolean
        sameSite:
          type: string
        expires:
          type: string
    CookieChangeSnapshot:
      type: object
      allOf:
        - $ref: '#/components/schemas/CookieTrait'
        - type: object
          required:
            - partyType
          properties:
            partyType:
              $ref: '#/components/schemas/CookiePartyType'
            cookieTTL:
              type: integer
              description: >-
                difference (in minutes) between cookie expiration and cookie set
                time (page scan) cookieTTL
              format: int64
    Cookie:
      type: object
      allOf:
        - $ref: '#/components/schemas/CookieTrait'
        - type: object
          required:
            - expirationTimestamp
            - opChangeType
          properties:
            expirationTimestamp:
              type: integer
              format: int64
            opChangeType:
              $ref: '#/components/schemas/CookieChangeTypeEnum'
    WebJourneyActionCookieItem:
      type: object
      allOf:
        - $ref: '#/components/schemas/FullCookieTrait'
        - type: object
          properties:
            expirationTimestamp:
              type: integer
              format: int64
            opChangeType:
              $ref: '#/components/schemas/CookieChangeTypeEnum'
    FullCookieTrait:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
        domain:
          type: string
        path:
          type: string
        httpOnly:
          type: boolean
        secure:
          type: boolean
        samesite:
          type: string
        expires:
          type: string
        partyType:
          $ref: '#/components/schemas/CookiePartyType'
        origin:
          $ref: '#/components/schemas/CookieOriginDto'
        initiators:
          type: array
          items:
            $ref: '#/components/schemas/CookieInitiator'
        partitionKey:
          type: string
    BaseCookieInsights:
      type: object
      required:
        - noOfUniqueCookies
        - noOfUniqueDomains
        - noOf3rdPartyCookies
      properties:
        noOfUniqueCookies:
          type: integer
        noOfUniqueDomains:
          type: integer
        noOf3rdPartyCookies:
          type: integer
    AuditCookieInsights:
      type: object
      allOf:
        - $ref: '#/components/schemas/BaseCookieInsights'
    WebJourneyCookieInsights:
      type: object
      allOf:
        - $ref: '#/components/schemas/BaseCookieInsights'
    AuditPageCookiesDTO:
      type: object
      required:
        - insights
        - cookies
      properties:
        insights:
          $ref: '#/components/schemas/AuditCookieInsights'
        cookies:
          type: array
          items:
            $ref: '#/components/schemas/AuditPageCookieItem'
    AuditPageCookieItem:
      type: object
      description: >-
        When `getOrigins` is `true`, will include `changes` array and
        `uniqueInitiatorCount`, but `initiators` array won't be included
      allOf:
        - $ref: '#/components/schemas/FullCookieTrait'
        - type: object
          properties:
            ttlInMinutes:
              type: integer
              format: int64
            uniqueInitiatorCount:
              type: integer
            changes:
              type: array
              items:
                $ref: '#/components/schemas/AuditPageCookieChangeItem'
    WebJourneyActionCookiesDTO:
      type: object
      required:
        - insights
        - create
      properties:
        insights:
          $ref: '#/components/schemas/WebJourneyCookieInsights'
        create:
          type: array
          items:
            $ref: '#/components/schemas/WebJourneyActionCookieItem'
    CookieOriginRequestDTO:
      type: object
      properties:
        name:
          type: string
        domain:
          type: string
        path:
          type: string
    BaseCookieChangeActionTrait:
      type: object
      required:
        - sequence
        - label
      properties:
        sequence:
          type: integer
        label:
          type: string
    BaseResponseCookieChangeItemTrait:
      type: object
      required:
        - cookieChangeType
        - cookie
      properties:
        cookieChangeType:
          $ref: '#/components/schemas/CookieChangeTypeEnum'
        cookie:
          $ref: '#/components/schemas/CookieChangeSnapshot'
    AuditCookieChangeAction:
      type: object
      allOf:
        - $ref: '#/components/schemas/BaseCookieChangeActionTrait'
        - type: object
          required:
            - actionSnapshotId
          properties:
            actionSnapshotId:
              type: integer
    AuditPageCookieChangeItem:
      type: object
      allOf:
        - $ref: '#/components/schemas/BaseResponseCookieChangeItemTrait'
        - type: object
          required:
            - action
            - initiators
            - cookieOriginType
          properties:
            action:
              $ref: '#/components/schemas/AuditCookieChangeAction'
            initiators:
              type: array
              items:
                $ref: '#/components/schemas/CookieChangeInitiator'
            cookieOriginType:
              $ref: '#/components/schemas/CookieOriginTypeEnum'
    AuditPageCookieOriginResponseDTO:
      type: object
      required:
        - changes
      properties:
        changes:
          type: array
          items:
            $ref: '#/components/schemas/AuditPageCookieChangeItem'
    WebJourneyCookieChangeAction:
      type: object
      allOf:
        - $ref: '#/components/schemas/BaseCookieChangeActionTrait'
    WebJourneyResponseCookieChangeItem:
      type: object
      allOf:
        - $ref: '#/components/schemas/BaseResponseCookieChangeItemTrait'
        - type: object
          required:
            - action
            - initiators
          properties:
            initiators:
              type: array
              items:
                $ref: '#/components/schemas/BaseCookieInitiator'
            action:
              $ref: '#/components/schemas/WebJourneyCookieChangeAction'
    WebJourneyResponseCookieOriginDto:
      type: object
      required:
        - changes
      properties:
        changes:
          type: array
          items:
            $ref: '#/components/schemas/WebJourneyResponseCookieChangeItem'
    WebJourneyRunCookieOrigin:
      type: object
      required:
        - totalCookieActionCount
        - totalCookieInitiatorCount
        - actions
      properties:
        totalCookieActionCount:
          type: integer
        totalCookieInitiatorCount:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/WebJourneyRunCookieOriginAction'
    WebJourneyRunCookieOriginAction:
      type: object
      required:
        - action
        - cookieChangeType
        - initiators
        - cookie
      properties:
        action:
          $ref: '#/components/schemas/WebJourneyCookieChangeAction'
        cookieChangeType:
          $ref: '#/components/schemas/CookieChangeTypeEnum'
        initiators:
          type: array
          items:
            $ref: '#/components/schemas/CookieChangeInitiator'
        cookie:
          $ref: '#/components/schemas/CookieChangeSnapshot'
    SpecificCookieRequestDTO:
      type: object
      required:
        - name
        - domain
        - path
      properties:
        name:
          type: string
        domain:
          type: string
        path:
          type: string
    CookieChangeInitiator:
      allOf:
        - $ref: '#/components/schemas/BaseCookieInitiator'
        - type: object
          properties:
            line:
              type: integer
              description: The line number in the JS file that created the cookie
            column:
              type: integer
              description: The column number in the JS file that created the cookie
    WebJourneyCookieInitiatorsDTO:
      type: object
      required:
        - initiators
      properties:
        initiators:
          type: array
          items:
            $ref: '#/components/schemas/WebJourneyCookieInitiator'
    WebJourneyCookieInitiator:
      deprecated: true
      allOf:
        - $ref: '#/components/schemas/BaseCookieInitiator'
        - type: object
          properties:
            cookieChangeType:
              $ref: '#/components/schemas/CookieChangeTypeEnum'
            harEntryIndex:
              type: integer
              description: >-
                HAR entry index of the request. In audits, it is the index of
                the request in either page HAR or pre audit action HAR (based on
                `origin`). In web journeys, it is the index of the request in
                the action HAR.
            appSource:
              $ref: '#/components/schemas/CookieInitiatorAppSource'
    BaseCookieInitiator:
      type: object
      required:
        - initiatorType
      properties:
        initiatorType:
          $ref: '#/components/schemas/CookieInitiatorTypeEnum'
        tagId:
          type: integer
          description: >-
            Will include a tag ID when a specific tag signature has been matched
            to initiating requests
        requestUrl:
          type: string
          description: |
            For `initiatorType`:
              - `HTTP` - `requestUrl` will be the URL of the request that created the cookie
              - `APP`, `OP_ACTION`, `UNKNOWN` - This field will be undefined
    CookieInitiatorTypeEnum:
      type: string
      description: Type of event that created the cookie
      enum:
        - HTTP
        - APP
        - OP_ACTION
        - UNKNOWN
    CookieInitiatorAppSourceTrait:
      type: object
      description: >-
        The source of the JavaScript that created the cookie. This object is
        only applicable for cookies with initiators of type `APP`
      required:
        - file
        - line
        - column
      properties:
        file:
          type: string
          description: The file-name in URL format of the JS file that created the cookie
        line:
          type: integer
          description: The line number in the JS file that created the cookie
        column:
          type: integer
          description: The column number in the JS file that created the cookie
    CookieInitiatorAppSource:
      allOf:
        - $ref: '#/components/schemas/CookieInitiatorAppSourceTrait'
        - type: object
          required:
            - harEntryIndex
          properties:
            harEntryIndex:
              type: integer
              description: HAR entry index of the JS file request
    GeoLocationDTO:
      type: object
      properties:
        id:
          type: integer
        countryCode:
          type: integer
        countryName:
          type: string
    RequestDomainDTO:
      type: array
      items:
        $ref: '#/components/schemas/RequestDomainParsingResult'
    RequestDomainParsingResult:
      oneOf:
        - $ref: '#/components/schemas/RequestDomainDTO-parsed1'
        - $ref: '#/components/schemas/RequestDomainDTO-parsed2'
        - $ref: '#/components/schemas/RequestDomainDTO-failedToParse'
    RequestDomainDTO-parsed1:
      type: object
      properties:
        domain:
          type: string
          example: observepoint.com
        scheme:
          type: string
          example: https
        isValid:
          type: boolean
          example: true
    RequestDomainDTO-parsed2:
      type: object
      properties:
        domain:
          type: string
          example: obs_ervepoint.com
        scheme:
          type: string
          example: https
        isValid:
          type: boolean
          example: false
    RequestDomainDTO-failedToParse:
      type: object
      properties:
        isValid:
          type: boolean
          example: false
        OriginalUrl:
          type: string
          example: fadsjguianvasnkd
    PageInsightsResponse:
      type: object
      properties:
        pagesFiltered:
          type: integer
        totalPages:
          type: integer
        averagePageLoadTime:
          type: integer
        brokenPages:
          type: integer
          deprecated: true
        pagesWithBrokenInitialStatusCode:
          type: integer
        pagesWithBrokenFinalStatusCode:
          type: integer
        pageCountByLoadTimes:
          type: object
          properties:
            below3:
              type: integer
            3to6:
              type: integer
            6to10:
              type: integer
            10andAbove:
              type: integer
        pageCountsByInitialStatusCodes:
          $ref: '#/components/schemas/PageInsightsResponsePageCountsByStatusCodes'
        pageCountsByFinalStatusCodes:
          $ref: '#/components/schemas/PageInsightsResponsePageCountsByStatusCodes'
        pagesWithBrokenLinks:
          type: integer
          description: Count of all pages that have broken links pointing to other pages
        webVitals:
          $ref: '#/components/schemas/AuditRun_PageSummary_AggregatedRunWebVitals'
    PageInsightsResponsePageCountsByStatusCodes:
      type: object
      properties:
        good:
          type: integer
        redirects:
          type: integer
        broken:
          type: integer
    InsightsByPageResponse:
      allOf:
        - $ref: '#/components/schemas/AuditRun_PageWebVitals'
        - type: object
          properties:
            pageId:
              type: string
            dataCollectionUuid:
              type: string
            pageUrl:
              type: string
            finalPageUrl:
              type: string
            pageTitle:
              type: string
            pageLoadTime:
              type: integer
            pageStatusCode:
              type: integer
              deprecated: true
              description: >-
                Deprecated, use `initialPageStatusCode` & `finalPageStatusCode`
                instead
            initialPageStatusCode:
              type: integer
            finalPageStatusCode:
              type: integer
            redirectCount:
              type: integer
              description: >-
                Number of redirects from initialUrl to finalUrl of the page or 0
                if none
            size:
              type: integer
              format: int64
            browserError:
              type: string
              description: error produced by browser upon opening the page
              example: >-
                This site can’t be reached. example.com’s server IP address
                could not be found. ERR_NAME_NOT_RESOLVED
    PageSummarySparkLinesDTO:
      type: object
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/PageSummarySparkLineDTO'
    PageSummarySparkLineDTO:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          properties:
            averagePageLoadTime:
              type: integer
            pagesWithBrokenInitialStatusCode:
              type: integer
            pagesWithBrokenFinalStatusCode:
              type: integer
            pagesWithBrokenLinks:
              type: integer
    AuditRun_PageSummary_TrendsEnum:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.TrendEnumCompatibleWithRunsGrid
      type: string
      enum:
        - avg_page_load_time
        - broken_initial_page
        - broken_final_page
        - pages_with_broken_links
    PageSummaryPagesDTO:
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/InsightsByPageResponse'
    PageSummaryRequestDTO:
      type: object
      description: Filter `pageStatusCode` is deprecated
      properties:
        pageLoadTime:
          $ref: '#/components/schemas/PageLoadTimeFilter'
        pageUrl:
          $ref: '#/components/schemas/PageUrlFilter'
        finalPageUrl:
          $ref: '#/components/schemas/PageUrlFilter'
        pageStatusCode:
          $ref: '#/components/schemas/StatusCodeEnum'
        pageSize:
          $ref: '#/components/schemas/PageSizeFilter'
        primaryTagsOnly:
          type: boolean
        tagId:
          type: integer
        tagCategoryId:
          type: integer
        tagAccount:
          type: string
        tagVendorId:
          $ref: '#/components/schemas/TagVendorId'
        pageTitle:
          $ref: '#/components/schemas/PageTitleFilter'
        initialPageStatusCode:
          $ref: '#/components/schemas/IntegerFilter'
        finalPageStatusCode:
          $ref: '#/components/schemas/IntegerFilter'
        hasBrokenLinks:
          type: boolean
        redirectCount:
          $ref: '#/components/schemas/PageRedirectCountFilter'
        combinedPageStatusCode:
          $ref: '#/components/schemas/CombinedPageStatusCodeEnum'
        hasParentPage:
          type: boolean
          description: >
            Usage:

            - `false` - only pages that do not have a parent page will be
            returned - starting URLs 

            - `true` - only pages that have a parent page will be returned -
            pages that were discovered during crawling

            - `null` or undefined - all pages will be returned.
        pageUrlMatchingAuditFilterConfiguration:
          type: boolean
        errors:
          $ref: '#/components/schemas/PageErrorsFilter'
        largestContentfulPaint:
          $ref: >-
            #/components/schemas/AuditRun_PageSummary_WebVitals_LargestContentfulPaintFilter
        firstContentfulPaint:
          $ref: >-
            #/components/schemas/AuditRun_PageSummary_WebVitals_FirstContentfulPaintFilter
        timeToFirstByte:
          $ref: >-
            #/components/schemas/AuditRun_PageSummary_WebVitals_TimeToFirstByteFilter
        cumulativeLayoutShift:
          $ref: >-
            #/components/schemas/AuditRun_PageSummary_WebVitals_CumulativeLayoutShiftFilter
    AuditRun_PageSummary_PagesSortColumn:
      type: string
      enum:
        - page_url
        - page_status_code
        - size
        - page_load_time
        - final_page_url
        - page_title
        - initial_page_status_code
        - final_page_status_code
        - redirect_count
        - largest_contentful_paint
        - first_contentful_paint
        - time_to_first_byte
        - cumulative_layout_shift
    PagesWithJsVariablesDTO:
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/S3IterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/PageWithJsVariables'
    PageWithJsVariables:
      type: object
      required:
        - pageId
        - pageUrl
        - pageInitialStatusCode
        - pageFinalStatusCode
        - variables
      properties:
        pageId:
          $ref: '#/components/schemas/PageId'
        pageUrl:
          $ref: '#/components/schemas/PageUrl'
        pageInitialStatusCode:
          $ref: '#/components/schemas/PageStatusCode'
        pageFinalStatusCode:
          $ref: '#/components/schemas/PageStatusCode'
        variables:
          description: All JS variables found on specific page
          type: array
          items:
            $ref: '#/components/schemas/JsVariable'
    JsVariable:
      type: object
      required:
        - name
        - value
      properties:
        name:
          description: Name of collected JS variable
          example: dataLayer
          type: string
        value:
          description: |
            Raw value of collected JS variable as it appeared on a page. 
            Can be any value - string, number, boolean, array, object or `null`
          nullable: true
          type: object
    S3IterableResponseMetadata:
      description: Metadata for iterable results from S3
      type: object
      required:
        - pagination
      properties:
        pagination:
          $ref: '#/components/schemas/S3PaginationMetadata'
    S3PaginationMetadata:
      description: >
        Represents pagination metadata for results from S3, where each result
        page contains multiple pageIds.

        It's not possible to efficiently get total count of files in S3, so
        metadata is missing fields like `totalCount` and `totalPageCount`
      type: object
      required:
        - pageSize
        - currentPageSize
        - lastPageId
      properties:
        pageSize:
          description: >-
            Page size - number of items per result page configured by `size`
            query parameter or default page size
          example: 50
          type: integer
        currentPageSize:
          description: Number of items in current result page
          example: 1
          type: integer
        lastPageId:
          description: >
            Last pageId on current result page, pass it as `startAfterPageId`
            query param to retrieve next page.

            Null if no items were returned
          example: f9d32cc7cc2046d6decb145a80289287f5226323
          type: string
          nullable: true
    AccountUsage_RequestDTO:
      description: Request body without filters for Account Usage report
      type: object
      properties:
        dummyValue:
          type: string
          description: Necessary value to generate DTO
    AuditRun_AuditSummary_RequestDTO:
      description: Request body with filters for Audit Summary report
      type: object
      properties:
        primaryTagsOnly:
          type: boolean
          description: >-
            (This filter option no longer works due to the response body change
            on May 2021) if true then return only pages/tags with primary tags
            else return all pages/tags
        tagId:
          $ref: '#/components/schemas/TagId'
        tagCategoryId:
          $ref: '#/components/schemas/TagCategoryId'
        tagVendorId:
          $ref: '#/components/schemas/TagVendorId'
    AuditRun_RuleResultsSummaryDTO:
      description: >-
        `Total Pages` + `Rules Applied` + `Rule Instances by Status` + `Pages by
        Rule Status`
      allOf:
        - $ref: '#/components/schemas/AuditRunRulePageCountTrait'
        - $ref: '#/components/schemas/AuditRunRuleCountTrait'
        - type: object
          required:
            - totalPageCount
            - filteredPageCount
            - totalRuleCount
            - filteredRuleCount
            - totalRuleFailureCount
            - filteredRuleFailureCount
          properties:
            totalPageCount:
              type: integer
              description: Total number of pages audited
            filteredPageCount:
              type: integer
              description: Number of pages passing all applied filters
            totalRuleCount:
              type: integer
              description: Total number of rules applied to an audit run
            filteredRuleCount:
              type: integer
              description: Number of rules passing all applied filters
            totalRuleFailureCount:
              type: integer
              description: >-
                Total number of rule failures (counted for every rule on every
                page)
            filteredRuleFailureCount:
              type: integer
              description: >-
                Number of rule failures (counted for every rule on every page)
                passing all applied filters
    AuditRun_AuditSummary_SummaryDTO:
      description: >-
        Audit Summary data. This endpoint will only provide unique primary tags
        data. the rest should be retrieved from tag-inventory :
        getAuditRunTagInventorySummary
      type: object
      required:
        - totalUniquePrimaryTagCount
        - filteredUniquePrimaryTagCount
      properties:
        totalUniquePrimaryTagCount:
          type: integer
          description: >-
            Total number of tag vendors selected as account primary tags
            discovered during an audit run
        filteredUniquePrimaryTagCount:
          type: integer
          description: >-
            Number of tag vendors selected as account primary tags passing all
            applied filters
    AuditRun_RuleSummary_RuleResults_AllTrendsDTO:
      description: >-
        Audit rule results trends overview (a.k.a. trendlines a.k.a. sparklines)
        for both `Rule Instances by Status` + `Pages by Rule Status`
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          maxItems: 5
          items:
            $ref: '#/components/schemas/AuditRun_RuleResults_AllTrendsItem'
    AuditRun_RuleResults_AllTrendsItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - $ref: '#/components/schemas/AuditRunRulePageCountTrait'
        - $ref: '#/components/schemas/AuditRunRuleCountTrait'
    AuditRun_RuleSummary_RuleResultsTrendDTO:
      description: Audit rule results trend values
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/AuditRunRuleResultsTrendItem'
    AuditRunRuleResultsTrendItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - $ref: '#/components/schemas/AuditRunRuleCountTrait'
    AuditRun_RuleSummary_RuleResults_PageCountTrendDTO:
      description: Audit rule results page count trend values
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/AuditRunRuleResultsPageCountTrendItem'
    AuditRunRuleResultsPageCountTrendItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - $ref: '#/components/schemas/AuditRunRulePageCountTrait'
    AuditRun_RuleSummary_RuleCountTrendDTO:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - ruleCount
            - ruleFailureCount
          properties:
            ruleCount:
              type: integer
              description: Number of rules applied to an audit run
            ruleFailureCount:
              type: integer
              description: Number of rule failures (counted for every rule on every page)
    AuditRun_AuditSummary_TrendsDTO:
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_AuditSummary_TrendItem'
    AuditRun_AuditSummary_TrendItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - totalBrokenPageCount
            - totalUniqueTagCount
            - totalBrokenTagCount
          properties:
            totalBrokenPageCount:
              type: integer
              description: Total number of broken pages
            totalUniqueTagCount:
              type: integer
              description: Total number of unique tag vendors
            totalBrokenTagCount:
              type: integer
              description: >-
                Total number of broken tag requests (0, 400+ or 500+ HTTP status
                code)
    AuditRun_AuditSummary_TrendsEnum:
      type: string
      enum:
        - unique_tags
        - broken_tags
        - broken_pages
    AuditRun_RuleSummary_AllRuleResultsOverviewDTO:
      description: '`Rule Details by Page` - all rules overview'
      type: object
      required:
        - rules
      properties:
        rules:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_AllRuleResultsItem'
    AuditRun_AllRuleResultsItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunRulePageCountTrait'
        - type: object
          required:
            - ruleSnapshotId
            - name
            - tags
            - hasEmailNotification
            - emailRecipients
          properties:
            ruleSnapshotId:
              $ref: '#/components/schemas/RuleSnapshotId'
            originalRuleId:
              $ref: '#/components/schemas/RuleId'
            ruleConfigExists:
              type: boolean
              description: If false, the rule config doesn't exist anymore
            name:
              type: string
              description: Rule name
            tags:
              type: array
              description: List of tags checked in the rule
              items:
                $ref: '#/components/schemas/TagInfoTrait'
            hasEmailNotification:
              type: boolean
            emailRecipients:
              type: array
              items:
                type: string
                format: email
    AuditRun_RuleSummary_SpecificRuleResultsDTO:
      description: '`Rule Details by Page` - single rule details'
      allOf:
        - $ref: '#/components/schemas/AuditRun_AllRuleResultsItem'
        - type: object
          required:
            - pageFilters
            - tags
          properties:
            originalRuleId:
              description: >-
                ID of an original rule snapshot has been taken from. May not be
                available if the rule doesn't exist anymore
              type: integer
              format: int64
            pageFilters:
              type: array
              items:
                $ref: '#/components/schemas/PageFilterSnapshot'
            tags:
              type: array
              items:
                $ref: '#/components/schemas/RuleTagSnapshot'
    PageFilterSnapshot:
      allOf:
        - $ref: '#/components/schemas/AuditRunRulePageCountTrait'
        - type: object
          description: >-
            same as v2 `PageFilter` but with snapshot ID and page count per rule
            outcome
          required:
            - pageFilterSnapshotId
            - ruleSnapshotId
          properties:
            pageFilterSnapshotId:
              $ref: '#/components/schemas/RulePageFilterSnapshotId'
            ruleSnapshotId:
              $ref: '#/components/schemas/RuleSnapshotId'
            value:
              type: string
            type:
              type: integer
              format: int32
              description: 1 - url, 2 - status code, 3 - final url, 4 - final status code
              enum:
                - 1
                - 2
                - 3
                - 4
            matchType:
              $ref: '#/components/schemas/MatchType'
    RuleTagSnapshot:
      allOf:
        - $ref: '#/components/schemas/AuditRunRulePageCountTrait'
        - type: object
          description: >-
            same as v2 `RuleTag` but with snapshot ID and page count per rule
            outcome
          required:
            - ruleTagSnapshotId
            - ruleSnapshotId
            - tagId
          properties:
            ruleTagSnapshotId:
              $ref: '#/components/schemas/RuleTagSnapshotId'
            ruleSnapshotId:
              $ref: '#/components/schemas/RuleSnapshotId'
            tagId:
              type: integer
              format: int32
            tagName:
              type: string
            tagCategoryId:
              type: integer
              format: int32
            tagCategoryName:
              type: string
            matchType:
              $ref: '#/components/schemas/MatchType'
            account:
              type: string
            validationDescription:
              type: string
            clause:
              type: string
              enum:
                - If
                - Then
                - Else
            variables:
              type: array
              items:
                $ref: '#/components/schemas/RuleTagVariableSnapshot'
            statusCode:
              $ref: '#/components/schemas/RuleTagStatusCode'
    RuleTagStatusCode:
      type: object
      required:
        - matchType
        - valueType
      properties:
        matchType:
          $ref: '#/components/schemas/MatchType'
        valueType:
          $ref: '#/components/schemas/StatusCodeValueType'
        value:
          type: integer
          format: int32
    RuleTagVariableSnapshot:
      allOf:
        - $ref: '#/components/schemas/AuditRunRulePageCountTrait'
        - type: object
          description: >-
            same as v2 `RuleTagVariable` but with snapshot ID and page count per
            rule outcome
          required:
            - ruleTagVariableSnapshotId
            - ruleTagSnapshotId
            - variable
          properties:
            ruleTagVariableSnapshotId:
              $ref: '#/components/schemas/RuleTagVariableSnapshotId'
            ruleTagSnapshotId:
              $ref: '#/components/schemas/RuleTagSnapshotId'
            variable:
              type: string
            value:
              type: string
            validationDescription:
              type: string
            matchType:
              $ref: '#/components/schemas/MatchType'
            valueTagId:
              type: integer
              format: int32
            selectorType:
              type: string
              enum:
                - String
                - UrlParameter
                - DataLayer
                - Tag
                - FinalUrlParam
    AuditRun_AuditSummary_PrimaryTagsDTO:
      type: object
      required:
        - tags
      properties:
        tags:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_AuditSummary_PrimaryTagItem'
    AuditRun_AuditSummary_PrimaryTagItem:
      allOf:
        - $ref: '#/components/schemas/TagInfoTrait'
        - type: object
          required:
            - pageCount
            - tagAccountCount
            - tagVersionCount
            - tagLoadTimeAverage
            - statusCodeDistribution
          properties:
            pageCount:
              type: integer
              description: Number of pages this tag has been discovered on
              default: 0
            tagAccountCount:
              type: integer
              description: Number of distinct accounts of the tag
              default: 0
            tagVersionCount:
              type: integer
              description: Number of distinct versions of the tag
              default: 0
            tagLoadTimeAverage:
              $ref: '#/components/schemas/TagLoadTime'
            statusCodeDistribution:
              $ref: >-
                #/components/schemas/AuditRun_AuditSummary_TagStatusCodeDistribution
    AuditRun_AuditSummary_TagStatusCodeDistribution:
      description: See `StatusCodeEnum`
      type: object
      nullable: false
      required:
        - good
        - redirect
        - broken
      properties:
        good:
          type: integer
          description: Number of tag requests with "good" status code
          default: 0
        redirect:
          type: integer
          description: Number of tag requests with "redirect" status code
          default: 0
        broken:
          type: integer
          description: Number of tag requests with "broken" status code
          default: 0
    AuditRun_AuditSummary_DetectedTagsDTO:
      type: object
      required:
        - tags
      properties:
        tags:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_AuditSummary_DetectedTagItem'
    AuditRun_AuditSummary_DetectedTagItem:
      allOf:
        - $ref: '#/components/schemas/TagInfoTrait'
        - type: object
          required:
            - pageCount
            - pageNotPresentCount
            - tagLoadTimeAverage
            - tagAccountCount
            - uniqueVariableCount
          properties:
            pageCount:
              type: integer
              description: Number of pages this tag has been discovered on
            pageNotPresentCount:
              type: integer
              description: Number of pages this tag has not been discovered on
            tagLoadTimeAverage:
              $ref: '#/components/schemas/TagLoadTime'
            tagAccountCount:
              type: integer
              description: Number of distinct accounts of the tag
            uniqueVariableCount:
              type: integer
              description: Number of unique variables in the tag
    AuditRun_AuditSummary_ScoresDTO:
      type: object
      required:
        - total
        - tagPresence
        - tagPerformance
        - rules
        - pagePerformance
        - cookies
      properties:
        total:
          $ref: '#/components/schemas/AuditRun_AuditSummary_Score'
        tagPresence:
          $ref: '#/components/schemas/AuditRun_AuditSummary_Score'
        tagPerformance:
          $ref: '#/components/schemas/AuditRun_AuditSummary_Score'
        rules:
          $ref: '#/components/schemas/AuditRun_AuditSummary_Score'
        pagePerformance:
          $ref: '#/components/schemas/AuditRun_AuditSummary_Score'
        cookies:
          $ref: '#/components/schemas/AuditRun_AuditSummary_Score'
    AuditRun_AuditSummary_Score:
      type: object
      required:
        - score
        - max
      properties:
        score:
          type: number
          format: float
          description: >-
            Amount of points obtained in given score category. Rounded to one
            digit after dot
        max:
          type: integer
          description: Max points for given score category, inclusive
    AuditRun_AuditSummary_AllScoresTrendValuesDTO:
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_AuditSummary_AllScoresTrendValueItem'
    AuditRun_AuditSummary_AllScoresTrendValueItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - scores
          properties:
            scores:
              $ref: '#/components/schemas/AuditRun_AuditSummary_ScoresDTO'
    AuditRun_AuditSummary_ScoreTrendsEnum:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.TrendEnumCompatibleWithRunsGrid
      type: string
      enum:
        - total
        - tag_presence
        - tag_performance
        - rules
        - page_performance
        - cookies
    AuditRun_AuditSummary_ScoreTrendValuesDTO:
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_AuditSummary_ScoreTrendValueItem'
    AuditRun_AuditSummary_ScoreTrendValueItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - score
          properties:
            score:
              $ref: '#/components/schemas/AuditRun_AuditSummary_Score'
    AuditRun_AlertSummary_AlertsOverviewResponseDTO:
      type: object
      required:
        - alerts
      properties:
        alerts:
          type: array
          minItems: 0
          items:
            title: AuditRun_AlertSummary_AlertsOverviewItem
            type: object
            required:
              - id
              - name
              - metricType
              - status
              - isSubscribed
              - alertConfigExists
            properties:
              id:
                $ref: '#/components/schemas/AlertId'
              name:
                $ref: '#/components/schemas/AlertName'
              metricType:
                $ref: '#/components/schemas/AlertMetricTypeEnum'
              status:
                $ref: '#/components/schemas/AlertResultStatusEnum'
              isSubscribed:
                type: boolean
              alertConfigExists:
                $ref: '#/components/schemas/AlertConfigExistsFlag'
    AuditRun_AlertSummary_SummaryRequestDTO:
      description: Request body with filters for Alert Summary report
      type: object
      properties:
        alertName:
          type: string
          description: >-
            when populated works as "alert `name` contains given substring"
            filter
        metricTypes:
          type: array
          minItems: 1
          items:
            $ref: '#/components/schemas/AlertMetricTypeEnum'
        status:
          $ref: '#/components/schemas/AlertResultSimplifiedStatusEnum'
        subscribedOnly:
          type: boolean
          description: >-
            when `false` or `null` then all alerts are returned, otherwise only
            alerts user is subscribed to are returned
    AlertResultSimplifiedStatusEnum:
      type: string
      description: >-
        Simplified version of `#/components/schemas/AlertResultStatusEnum` for
        UI filters
      enum:
        - TRIGGERED
        - NOT_TRIGGERED
    AuditRun_AuditSummary_AlertsResponseDTO:
      type: object
      required:
        - metadata
        - alerts
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        alerts:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_AuditSummary_AlertsResponseItem'
    AccountUsage_AlertSummary_AlertsResponseDTO:
      type: object
      required:
        - alerts
      properties:
        alerts:
          type: array
          items:
            $ref: '#/components/schemas/AccountUsage_AlertSummary_AlertsResponseItem'
    AuditRun_AuditSummary_AlertsSortColumn:
      type: string
      enum:
        - ALERT_NAME
        - ALERT_LOGIC
        - ACTUAL_VALUE
        - SUBSCRIBERS
    AccountUsage_AlertSummary_AlertsResponseItem:
      type: object
      required:
        - id
        - config
        - result
      properties:
        id:
          $ref: '#/components/schemas/AlertId'
        config:
          $ref: '#/components/schemas/AuditRun_AuditSummary_AlertsResponseItemConfig'
        result:
          $ref: '#/components/schemas/AuditRun_AuditSummary_AlertResult'
    AuditRun_AuditSummary_AlertsResponseItem:
      type: object
      required:
        - id
        - config
        - result
        - history
        - alertConfigExists
      properties:
        id:
          $ref: '#/components/schemas/AlertId'
        config:
          $ref: '#/components/schemas/AuditRun_AuditSummary_AlertsResponseItemConfig'
        result:
          $ref: '#/components/schemas/AuditRun_AuditSummary_AlertResult'
        history:
          $ref: '#/components/schemas/AlertResultsHistoryArray'
        alertConfigExists:
          $ref: '#/components/schemas/AlertConfigExistsFlag'
    AuditRun_AuditSummary_AlertResult:
      allOf:
        - $ref: '#/components/schemas/AlertResultDetails'
    AuditRun_AuditSummary_AlertsResponseItemConfig:
      allOf:
        - $ref: '#/components/schemas/AlertConfigTrait'
        - type: object
          required:
            - subscriberCount
            - isUserSubscribed
          properties:
            subscriberCount:
              type: integer
            isUserSubscribed:
              type: boolean
    AlertResultsHistoryArray:
      type: array
      description: Returns up to 20 runs with alert results
      minItems: 0
      maxItems: 20
      items:
        $ref: '#/components/schemas/AuditRun_AuditSummary_AlertsItem_HistoryItem'
    AuditRun_AuditSummary_AlertsItem_HistoryItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - $ref: '#/components/schemas/AlertResultDetails'
    AlertResultDetails:
      type: object
      required:
        - status
      properties:
        status:
          $ref: '#/components/schemas/AlertResultStatusEnum'
        actualValue:
          description: Value of the computed metric or its change.
          type: number
          format: double
        currentRunValue:
          description: >-
            Value of computed metric for current run. Present when alert is
            configured on metric change, not on single run metric value
          type: number
          format: double
        previousRunValue:
          description: >-
            Value of computed metric for previous run. Present when alert is
            configured on metric change, not on single run metric value
          type: number
          format: double
    AuditRun_AuditSummary_SpecificAlertResponseDTO:
      type: object
      required:
        - id
        - config
        - result
        - alertConfigExists
      properties:
        id:
          $ref: '#/components/schemas/AlertId'
        config:
          $ref: '#/components/schemas/AuditRun_AuditSummary_AlertsResponseItemConfig'
        result:
          $ref: '#/components/schemas/AuditRun_AuditSummary_AlertResult'
        alertConfigExists:
          $ref: '#/components/schemas/AlertConfigExistsFlag'
    AlertConfigExistsFlag:
      type: boolean
      description: >-
        when `true` then alert config exists and can be edited, otherwise it is
        deleted
    AuditRun_AlertSummary_SummaryDTO:
      description: Alert Summary report summary
      type: object
      required:
        - totalConfiguredAlertsCount
        - totalTriggeredAlertsCount
      properties:
        totalConfiguredAlertsCount:
          type: integer
          description: Number of alerts configured for audit run
        totalTriggeredAlertsCount:
          type: integer
          description: Number of alerts triggered in audit run
    AuditRun_AlertSummary_TrendsDTO:
      description: Alert Summary report trends
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_AlertSummary_TrendItem'
    AuditRun_AlertSummary_TrendItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - totalConfiguredAlertsCount
            - totalTriggeredAlertsCount
          properties:
            totalConfiguredAlertsCount:
              type: integer
              description: Total number of alerts configured for audit run
            totalTriggeredAlertsCount:
              type: integer
              description: Total number of alerts triggered in audit run
    AuditRun_AlertSummary_TrendsEnum:
      type: string
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.TrendEnumCompatibleWithRunsGrid
      enum:
        - configured_alerts
        - triggered_alerts
    AccountTriggeredAlertsRequestDTO:
      description: Request body with filters for Account Triggered Alerts
      type: object
      properties:
        runDateRange:
          $ref: '#/components/schemas/AlertRunDateRange'
        metricTypes:
          type: array
          minItems: 1
          items:
            $ref: '#/components/schemas/AlertMetricTypeEnum'
        alertName:
          type: string
          description: >-
            when populated works as "alert `name` contains given substring"
            filter
        alertLabels:
          type: array
          description: non-empty array of labels present on an alert
          minItems: 1
          items:
            $ref: '#/components/schemas/LabelId'
        itemName:
          type: string
          minLength: 1
          description: optional "item name contains substring" filter
        itemLabels:
          type: array
          description: >-
            non-empty array of labels present on an item, works as "item has all
            specified labels" filter
          minItems: 1
          items:
            $ref: '#/components/schemas/LabelId'
        itemType:
          $ref: '#/components/schemas/AlertAssignmentItemTypeEnum'
        folders:
          $ref: '#/components/schemas/FoldersFilter'
        subscribedOnly:
          type: boolean
          description: >-
            when `false` or `null` then all alerts are returned, otherwise only
            alerts user is subscribed to are returned
    AccountTriggeredAlertsSpecificAlertRequestDTO:
      type: object
      properties:
        runDateRange:
          $ref: '#/components/schemas/AlertRunDateRange'
        itemName:
          type: string
          minLength: 1
          description: optional "item name contains substring" filter
        itemLabels:
          type: array
          description: >-
            non-empty array of labels present on an item, works as "item has all
            specified labels" filter
          minItems: 1
          items:
            $ref: '#/components/schemas/LabelId'
        itemType:
          $ref: '#/components/schemas/AlertAssignmentItemTypeEnum'
        folders:
          $ref: '#/components/schemas/FoldersFilter'
    AlertRunDateRange:
      type: object
      description: >-
        Should have `from` and/or `to` dates defined. `from` is inclusive and
        `to` is exclusive. `to` date should be after `from` date.
      properties:
        from:
          $ref: '#/components/schemas/DateAndTime'
        to:
          $ref: '#/components/schemas/DateAndTime'
    AccountTriggeredAlerts_SummaryDTO:
      type: object
      required:
        - triggeredAlertAffectedPageCount
        - triggeredAlertsInMostRecentRunCount
        - auditsWithTriggeredAlertCount
        - triggeredUsageAlertCount
      properties:
        triggeredAlertAffectedPageCount:
          type: integer
        triggeredAlertsInMostRecentRunCount:
          type: integer
        auditsWithTriggeredAlertCount:
          type: integer
        triggeredUsageAlertCount:
          type: integer
    AccountTriggeredAlerts_DataSourcesDTO:
      type: object
      required:
        - metadata
        - dataSources
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        dataSources:
          type: array
          minItems: 0
          items:
            $ref: '#/components/schemas/AccountTriggeredAlerts_DataSource'
    AccountTriggeredAlerts_DataSource:
      allOf:
        - $ref: '#/components/schemas/AlertResultDetails'
        - $ref: '#/components/schemas/PagesWithTriggeredAlerts'
        - type: object
          required:
            - runDate
            - itemName
            - itemType
            - runId
            - itemId
          properties:
            runDate:
              $ref: '#/components/schemas/DateAndTime'
            itemName:
              type: string
            itemType:
              $ref: '#/components/schemas/AlertAssignmentItemTypeEnum'
            runId:
              $ref: '#/components/schemas/RunId'
            itemId:
              $ref: '#/components/schemas/AlertAssignmentItemId'
    AccountTriggeredAlerts_AlertsDTO:
      type: object
      required:
        - metadata
        - alerts
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        alerts:
          type: array
          minItems: 0
          items:
            $ref: '#/components/schemas/AccountTriggeredAlerts_Alert'
    AccountTriggeredAlerts_Alert:
      allOf:
        - $ref: '#/components/schemas/AlertConfigTrait'
        - $ref: '#/components/schemas/PagesWithTriggeredAlerts'
        - type: object
          required:
            - id
            - subscriberCount
            - isUserSubscribed
            - recentTriggeredDate
            - dataSourceCount
            - alertConfigExists
          properties:
            id:
              $ref: '#/components/schemas/AlertId'
            subscriberCount:
              type: integer
            isUserSubscribed:
              type: boolean
            recentTriggeredDate:
              $ref: '#/components/schemas/DateAndTime'
            dataSourceCount:
              type: integer
            alertConfigExists:
              $ref: '#/components/schemas/AlertConfigExistsFlag'
    PagesWithTriggeredAlerts:
      type: object
      required:
        - appliedAlertPageCount
        - triggeredAlertAffectedPageCount
      properties:
        appliedAlertPageCount:
          type: integer
        triggeredAlertAffectedPageCount:
          type: integer
    GetAccountTriggeredAlertsSortColumn:
      type: string
      enum:
        - RECENTLY_TRIGGERED_DATE
        - ALERT_NAME
        - REPORT_METRIC
        - PAGES_WITH_TRIGGERED_ALERTS
        - SUBSCRIBERS
        - DATA_SOURCES
    GetAccountTriggeredAlertSortColumn:
      type: string
      enum:
        - RUN_DATE
        - DATA_SOURCE_NAME
        - PAGES_WITH_TRIGGERED_ALERTS
    AuditRun_RuleSummary_BaseRequestTrait:
      description: >-
        Common request body with filters applicable to rule summary report If
        `initialPageStatusCode` and `pageStatusCode` filters provided,
        `pageStatusCode` will be ignored
      type: object
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            pageStatusCode:
              $ref: '#/components/schemas/StatusCodeEnum'
            primaryTagsOnly:
              description: >-
                if true then return only rules/pages with primary tags else
                return all rules/pages
              type: boolean
            tagId:
              $ref: '#/components/schemas/TagId'
            tagCategoryId:
              $ref: '#/components/schemas/TagCategoryId'
            tagVendorId:
              $ref: '#/components/schemas/TagVendorId'
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
            ruleFailuresOnly:
              description: Use `ruleStatus` instead
              type: boolean
              deprecated: true
            ruleStatus:
              $ref: '#/components/schemas/RuleStatus'
    AuditRun_RuleSummary_RequestDTO:
      description: Request to get rule summary
      x-implements:
        - com.observepoint.reportingapi.gen.interfaces.RuleSummaryFilters
      allOf:
        - $ref: '#/components/schemas/AuditRun_RuleSummary_BaseRequestTrait'
        - type: object
          properties:
            ruleId:
              $ref: '#/components/schemas/RuleId'
    AuditRun_RuleSummary_SpecificRuleResultsRequestDTO:
      description: Request to get rule results list
      x-implements:
        - com.observepoint.reportingapi.gen.interfaces.RuleSummaryFilters
      allOf:
        - $ref: '#/components/schemas/AuditRun_RuleSummary_BaseRequestTrait'
    AuditRun_RuleSummary_AllRuleResultsRequestDTO:
      description: Request to get all rules/pages results
      x-implements:
        - com.observepoint.reportingapi.gen.interfaces.RuleSummaryFilters
      allOf:
        - $ref: '#/components/schemas/AuditRun_RuleSummary_RequestDTO'
    AuditRun_RuleSummary_PageRuleResultsDTO:
      description: >-
        Pages list with rule failures (when no specific rule condition/outcome
        selected)
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_RuleSummary_PageRuleResultsItem'
    AuditRun_RuleSummary_AllRules_PagesSortColumn:
      type: string
      enum:
        - page_url
        - final_page_url
        - page_status_code
        - final_page_status_code
        - page_load_time
        - rule_failures
    AuditRun_RuleSummary_PageRuleResultsItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
        - type: object
          required:
            - ruleFailureCount
          properties:
            ruleFailureCount:
              type: integer
              description: Number of rules failed on the page
    AuditRun_RuleSummary_SpecificRulePagesRequestDTO:
      description: >-
        Request to get pages list with rule condition details (when specific
        rule condition/outcome is selected)
      x-implements:
        - com.observepoint.reportingapi.gen.interfaces.RuleSummaryFilters
      allOf:
        - $ref: '#/components/schemas/AuditRun_RuleSummary_BaseRequestTrait'
        - type: object
          properties:
            ruleFilter:
              $ref: >-
                #/components/schemas/AuditRun_RuleSummary_PageRuleResultsRuleFilter
            ruleResultType:
              $ref: '#/components/schemas/AuditRun_RuleSummary_RuleResultEnum'
    AuditRun_RuleSummary_SpecificRulePagesExportRequestDTO:
      description: >-
        Request used in exports to get pages list with rule condition details
        (when specific rule condition/outcome is selected)
      x-implements:
        - com.observepoint.reportingapi.gen.interfaces.RuleSummaryFilters
      allOf:
        - $ref: >-
            #/components/schemas/AuditRun_RuleSummary_SpecificRulePagesRequestDTO
        - type: object
          required:
            - ruleSnapshotId
          properties:
            ruleSnapshotId:
              $ref: '#/components/schemas/RuleSnapshotId'
    AuditRun_RuleSummary_RuleResultEnum:
      type: string
      enum:
        - passed
        - failed
        - not_applied
        - broken
    AuditRun_RuleSummary_PageRuleResultsRuleFilter:
      type: object
      required:
        - filterType
      properties:
        filterType:
          $ref: >-
            #/components/schemas/AuditRun_RuleSummary_PageRuleResultsRuleFilterEnum
      description: >
        Optionally filters by a specific component within the rule's logic
        (e.g., a tag or variable condition).

        When used with `filterType` = `tag_filter` or `tag_variable_filter`, it
        overrides the default behavior

        of the `ruleResultType` filter, applying it to this specific component's
        outcome
      discriminator:
        propertyName: filterType
        mapping:
          page_filter: >-
            #/components/schemas/AuditRun_RuleSummary_PageRuleResultsRulePageFilter
          tag_filter: >-
            #/components/schemas/AuditRun_RuleSummary_PageRuleResultsRuleTagFilter
          tag_variable_filter: >-
            #/components/schemas/AuditRun_RuleSummary_PageRuleResultsRuleTagVariableFilter
    AuditRun_RuleSummary_PageRuleResultsRuleFilterEnum:
      type: string
      enum:
        - page_filter
        - tag_filter
        - tag_variable_filter
    AuditRun_RuleSummary_PageRuleResultsRulePageFilter:
      x-discriminator-value: page_filter
      allOf:
        - $ref: '#/components/schemas/AuditRun_RuleSummary_PageRuleResultsRuleFilter'
        - type: object
          required:
            - pageFilterSnapshotId
          properties:
            pageFilterSnapshotId:
              $ref: '#/components/schemas/RulePageFilterSnapshotId'
    AuditRun_RuleSummary_PageRuleResultsRuleTagFilter:
      x-discriminator-value: tag_filter
      allOf:
        - $ref: '#/components/schemas/AuditRun_RuleSummary_PageRuleResultsRuleFilter'
        - type: object
          required:
            - tagSnapshotId
          properties:
            tagSnapshotId:
              $ref: '#/components/schemas/RuleTagSnapshotId'
    AuditRun_RuleSummary_PageRuleResultsRuleTagVariableFilter:
      x-discriminator-value: tag_variable_filter
      allOf:
        - $ref: '#/components/schemas/AuditRun_RuleSummary_PageRuleResultsRuleFilter'
        - type: object
          required:
            - tagSnapshotId
            - tagVariableSnapshotId
          properties:
            tagSnapshotId:
              $ref: '#/components/schemas/RuleTagSnapshotId'
            tagVariableSnapshotId:
              $ref: '#/components/schemas/RuleTagVariableSnapshotId'
    AuditRun_RuleSummary_SpecificRulePageRuleResultsDTO:
      description: >
        Pages list with rule condition details (when specific rule
        condition/outcome is selected)

        The `ruleResultType` filter applies to the specific condition outcome
        when `ruleFilter.filterType`

        is `tag_filter` or `tag_variable_filter`; otherwise, it applies to the
        overall rule result for the page
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: >-
              #/components/schemas/AuditRun_RuleSummary_SpecificRulePageRuleResultsItem
    AuditRun_RuleSummary_SpecificRule_PagesSortColumn:
      type: string
      enum:
        - page_url
        - final_page_url
        - page_status_code
        - final_page_status_code
        - page_load_time
    AuditRun_RuleSummary_SpecificRulePageRuleResultsItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
        - type: object
          required:
            - conditionResult
          properties:
            conditionResult:
              $ref: '#/components/schemas/AuditRun_RuleSummary_RuleConditionResult'
    AuditRun_RuleSummary_RuleConditionResult:
      description: Only tag variable condition has parent - tag condition
      type: object
      required:
        - id
        - idType
        - name
        - matcher
        - expected
      properties:
        id:
          description: >
            condition snapshot ID. One of: `RulePageFilterSnapshotId`,
            `RuleTagSnapshotId`, `RuleTagVariableSnapshotId`
          type: integer
          format: int64
        idType:
          type: string
        parentId:
          $ref: '#/components/schemas/RuleTagSnapshotId'
        parentType:
          type: string
        name:
          type: string
        matcher:
          type: string
        actual:
          type: string
        expected:
          $ref: '#/components/schemas/ConditionExpectedResult'
    ConditionExpectedResult:
      description: The rule condition expected values
      type: object
      required:
        - expected
      properties:
        expected:
          type: array
          items:
            type: string
        name:
          type: string
        selectorType:
          type: string
          enum:
            - String
            - UrlParameter
            - DataLayer
            - Tag
            - FinalUrlParam
            - Empty
    AuditRun_TagInventory_RequestDTO:
      description: >
        Request body with filters for Tag Inventory report.

        If `initialPageStatusCode` and `pageStatusCode` filters provided,
        `pageStatusCode` will be ignored.

        `pagesWithoutTagId` replaces `missingTag` filter, 

        `pagesWithoutTagCategoryId` replaces `missingTagCategory`, 

        `pagesWithoutTagVendorId` replaces `missingTagVendor`.
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            pageStatusCode:
              $ref: '#/components/schemas/StatusCodeEnum'
            primaryTagsOnly:
              type: boolean
              description: >-
                if true then return only pages/tags with primary tags else
                return all pages/tags
            tagId:
              $ref: '#/components/schemas/TagId'
            tagCategoryId:
              $ref: '#/components/schemas/TagCategoryId'
            tagVendorId:
              $ref: '#/components/schemas/TagVendorId'
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
            pagesWithoutTagId:
              deprecated: true
              type: integer
              description: Deprecated in favour of `pagesWithoutTag`
            pagesWithoutTagCategoryId:
              $ref: '#/components/schemas/TagCategoryId'
            pagesWithoutTagVendorId:
              $ref: '#/components/schemas/TagVendorId'
            pagesWithoutTag:
              $ref: '#/components/schemas/AuditRun_TagInventory_PagesWithoutTag'
    AuditRun_TagInventory_FilteredRequestDTO:
      description: >
        Request body for Tag Inventory report with filters present in path
        removed

        If `initialPageStatusCode` and `pageStatusCode` filters provided,
        `pageStatusCode` will be ignored.

        `pagesWithoutTagId` replaces `missingTag` filter, 

        `pagesWithoutTagCategoryId` replaces `missingTagCategory`, 

        `pagesWithoutTagVendorId` replaces `missingTagVendor`.
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            pageStatusCode:
              $ref: '#/components/schemas/StatusCodeEnum'
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
            pagesWithoutTagId:
              $ref: '#/components/schemas/TagId'
            pagesWithoutTagCategoryId:
              $ref: '#/components/schemas/TagCategoryId'
            pagesWithoutTagVendorId:
              $ref: '#/components/schemas/TagVendorId'
    AuditRun_TagInventory_PagesWithoutTag:
      type: object
      required:
        - tagId
      properties:
        tagId:
          $ref: '#/components/schemas/TagId'
        tagAccount:
          $ref: '#/components/schemas/TagAccount'
    AuditRun_TagInventory_SummaryDTO:
      description: Tag Inventory report summary
      type: object
      required:
        - totalPageCount
        - filteredPageCount
        - filteredBrokenPageCount
        - filteredUniqueTagCount
        - filteredBrokenTagCount
        - totalTagInstanceCount
      properties:
        totalPageCount:
          type: integer
          description: Total number of pages audited
        filteredPageCount:
          type: integer
          description: Number of pages passing all applied filters
        filteredBrokenPageCount:
          type: integer
          description: Number of broken pages passing all applied filters
        filteredUniqueTagCount:
          type: integer
          description: Number of unique tag vendors passing all applied filters
        filteredBrokenTagCount:
          type: integer
          description: >-
            Number of broken tag requests (0, 400+ or 500+ HTTP status code)
            passing all applied filters
        totalTagInstanceCount:
          type: integer
          description: Total number of tag requests discovered
    AuditRun_TagInventory_TagCategoriesSummaryDTO:
      type: object
      required:
        - tagCategories
      properties:
        tagCategories:
          type: array
          description: >-
            All tag categories discovered. Not affected by `tagCategoryId`
            filter
          items:
            $ref: '#/components/schemas/AuditRun_TagInventory_TagCategoryItem'
    AuditRun_TagInventory_TagCategoryItem:
      type: object
      required:
        - tagCategoryId
        - totalTagInstanceCount
        - tagFilterStatus
      properties:
        tagCategoryId:
          $ref: '#/components/schemas/TagCategoryId'
        totalTagInstanceCount:
          type: integer
          description: Number of instances of tags from this category
        tagFilterStatus:
          type: boolean
          description: >-
            True if this tag category had tag instances that met any of the tag
            filter criteria
    AuditRun_TagInventory_TrendsDTO:
      description: Tag Inventory trends overview (a.k.a. trendlines a.k.a. sparklines)
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          maxItems: 5
          items:
            $ref: '#/components/schemas/AuditRun_TagInventory_TrendsItem'
    AuditRun_TagInventory_TrendsItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - totalBrokenPageCount
            - totalUniqueTagCount
            - totalBrokenTagCount
          properties:
            totalBrokenPageCount:
              type: integer
              description: Total number of broken pages
            totalUniqueTagCount:
              type: integer
              description: Total number of unique tag vendors discovered
            totalBrokenTagCount:
              type: integer
              description: >-
                Total number of broken tag requests (0, 400+ or 500+ HTTP status
                code)
    AuditRun_TagInventory_TrendsEnum:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.TrendEnumCompatibleWithRunsGrid
      type: string
      enum:
        - unique_tags
        - broken_tags
        - broken_pages
    AuditRun_TagInventory_TagPresenceItemTrait:
      type: object
      required:
        - tagPresentPageCount
        - tagAbsentPageCount
      properties:
        tagPresentPageCount:
          type: integer
          description: Total number of pages with the tag/account
        tagAbsentPageCount:
          type: integer
          description: Total number of pages without tag/account
    AuditRun_TagInventory_TagPresenceDTO:
      description: '`Pages With & Without Tags` data'
      type: object
      required:
        - tags
      properties:
        tags:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_TagInventory_TagPresence_TagItem'
    AuditRun_TagInventory_TagPresence_TagItem:
      allOf:
        - $ref: '#/components/schemas/TagInfoTrait'
        - $ref: '#/components/schemas/AuditRun_TagInventory_TagPresenceItemTrait'
        - type: object
          required:
            - filteredTagAccountCount
          properties:
            filteredTagAccountCount:
              type: integer
              description: Number of accounts of a tag passing all applied filters
    AuditRun_TagInventory_TagAccountPresenceDTO:
      type: object
      required:
        - metadata
        - tagAccounts
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        tagAccounts:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_TagInventory_TagAccountsPresenceItem'
    AuditRun_TagInventory_TagAccountsPresenceItem:
      allOf:
        - $ref: '#/components/schemas/AuditRun_TagInventory_TagPresenceItemTrait'
        - type: object
          required:
            - tagAccount
          properties:
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
    AuditRun_TagInventory_PagesDTO:
      description: Tag Inventory pages list data
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_TagInventory_PagesItem'
    AuditRun_TagInventory_PagesSortColumn:
      type: string
      enum:
        - page_url
        - final_page_url
        - page_load_time
        - page_status_code
        - final_page_status_code
        - tag_instance_count
        - unique_tag_count
        - broken_tag_count
    AuditRun_TagInventory_PagesItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
        - type: object
          required:
            - tagInstanceCount
            - uniqueTagCount
            - brokenTagCount
          properties:
            tagInstanceCount:
              type: integer
              description: Number of tag requests on a page
            uniqueTagCount:
              type: integer
              description: Number of unique tag vendors discovered on a page
            brokenTagCount:
              type: integer
              description: Number of broken tag requests on a page
    AuditRun_TagHealth_RequestDTO:
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            pageStatusCode:
              $ref: '#/components/schemas/StatusCodeEnum'
            primaryTagsOnly:
              type: boolean
              description: >-
                if true then return only pages/tags with primary tags else
                return all pages/tags
            tagLoadTime:
              $ref: '#/components/schemas/TagLoadTimeFilter'
            tagStatusCode:
              $ref: '#/components/schemas/StatusCodeEnum'
            tagId:
              $ref: '#/components/schemas/TagId'
            tagCategoryId:
              $ref: '#/components/schemas/TagCategoryId'
            tagVendorId:
              $ref: '#/components/schemas/TagVendorId'
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
            tagRequestSize:
              $ref: '#/components/schemas/AuditRun_TagHealth_TagRequestSize'
    AuditRun_TagHealth_FilteredRequestDTO:
      description: Request body for Tag Health report with filters present in path removed
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            pageStatusCode:
              $ref: '#/components/schemas/StatusCodeEnum'
            tagLoadTime:
              $ref: '#/components/schemas/TagLoadTimeFilter'
            tagStatusCode:
              $ref: '#/components/schemas/StatusCodeEnum'
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
            tagRequestSize:
              $ref: '#/components/schemas/AuditRun_TagHealth_TagRequestSize'
    AuditRun_TagHealth_SummaryDTO:
      description: Slow tag - request loaded slower than 2 sec
      type: object
      required:
        - totalPageCount
        - filteredPageCount
        - filteredTagRequestSizeAverage
        - filteredTagLoadTimeAverage
        - filteredSlowTagCount
        - filteredSlowTagPercentage
        - filteredBrokenTagCount
        - filteredBrokenTagPercentage
        - filteredTagInstanceCount
        - tagLoadTimeDistribution
        - tagStatusCodeDistribution
      properties:
        totalPageCount:
          type: integer
          description: Total number of pages audited
        filteredPageCount:
          type: integer
          description: Number of pages passing all applied filters
        filteredTagLoadTimeAverage:
          $ref: '#/components/schemas/TagLoadTime'
        filteredTagRequestSizeAverage:
          $ref: '#/components/schemas/TagRequestSize'
        filteredSlowTagCount:
          type: integer
          description: >-
            Number of tag request loadeded slower than 2 sec passing all applied
            filters
        filteredSlowTagPercentage:
          type: number
          format: double
          description: >-
            Percentage of tag requests loaded slower than 2 sec passing all
            applied filters
        filteredBrokenTagCount:
          type: integer
          description: >-
            Number of broken tag requests (0, 400+ or 500+ HTTP status code)
            passing all applied filters
        filteredBrokenTagPercentage:
          type: number
          format: double
          description: >-
            Percentage of tag requests loaded slower than 2 sec passing all
            applied filters
        filteredTagInstanceCount:
          type: integer
          description: Number of tag requests passing all applied filters
        tagLoadTimeDistribution:
          $ref: '#/components/schemas/AuditRun_TagHealth_TagLoadTimeDistribution'
        tagStatusCodeDistribution:
          $ref: '#/components/schemas/AuditRun_TagHealth_TagStatusCodeDistribution'
    AuditRun_TagHealth_TagLoadTimeDistribution:
      type: object
      required:
        - below500
        - 500to1000
        - 1000to2000
        - above2000
      properties:
        below500:
          type: integer
          description: Number of tag requests with load time < 500 ms
        500to1000:
          type: integer
          description: Number of tag requests with 500 ms ≤ load time < 1000 ms
        1000to2000:
          type: integer
          description: Number of tag requests with 1000 ms ≤ load time < 2000 ms
        above2000:
          type: integer
          description: Number of tag requests with 2000 ms ≤ load time
    AuditRun_TagHealth_TagStatusCodeDistribution:
      description: See `StatusCodeEnum`
      type: object
      required:
        - good
        - redirect
        - broken
      properties:
        good:
          type: integer
          description: Number of tag requests with "good" status code
        redirect:
          type: integer
          description: Number of tag requests with "redirect" status code
        broken:
          type: integer
          description: Number of tag requests with "broken" status code
    AuditRun_TagHealth_TrendsDTO:
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_TagHealth_TrendsItem'
    AuditRun_TagHealth_TrendsItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - totalTagLoadTimeAverage
            - totalTagRequestSizeAverage
            - totalSlowTagCount
            - totalBrokenTagCount
            - totalTagInstanceCount
          properties:
            totalTagLoadTimeAverage:
              $ref: '#/components/schemas/TagLoadTime'
            totalTagRequestSizeAverage:
              $ref: '#/components/schemas/TagRequestSize'
            totalSlowTagCount:
              type: integer
              description: Total number of tag request loaded slower than 2 sec
            slowTagPercentage:
              type: number
              format: double
              description: Percentage of tag requests loaded slower than 2 sec
            totalBrokenTagCount:
              type: integer
              description: >-
                Total number of broken tag requests (0, 400+ or 500+ HTTP status
                code)
            brokenTagPercentage:
              type: number
              format: double
              description: Percentage of tag requests loaded slower than 2 sec
            totalTagInstanceCount:
              type: integer
              description: Number of tag requests passing all applied filters
    AuditRun_TagHealth_TrendsEnum:
      type: string
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.TrendEnumCompatibleWithRunsGrid
      enum:
        - average_tag_load_time
        - average_tag_request_size
        - slow_tags
        - slow_tag_percentage
        - broken_tags
        - broken_tag_percentage
        - tag_requests
    AuditRun_TagHealth_TagListDTO:
      type: object
      required:
        - tags
      properties:
        tags:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_TagHealth_TagListItem'
    AuditRun_TagHealth_TagListItem:
      allOf:
        - $ref: '#/components/schemas/AuditRun_TagHealth_TagListItemTrait'
        - type: object
          required:
            - filteredTagAccountCount
          properties:
            filteredTagAccountCount:
              type: integer
              description: Number of accounts of a tag passing all applied filters
    AuditRun_TagHealth_TagListItemTrait:
      allOf:
        - $ref: '#/components/schemas/TagInfoTrait'
        - type: object
          required:
            - tagInstanceCount
            - tagRequestSizeAverage
            - tagLoadTimeDistribution
            - tagStatusCodeDistribution
          properties:
            tagInstanceCount:
              type: integer
              description: Number of tag requests
            tagRequestSizeAverage:
              $ref: '#/components/schemas/TagRequestSize'
            tagLoadTimeDistribution:
              $ref: '#/components/schemas/AuditRun_TagHealth_TagLoadTimeDistribution'
            tagStatusCodeDistribution:
              $ref: >-
                #/components/schemas/AuditRun_TagHealth_TagStatusCodeDistribution
    AuditRun_TagHealth_TagAccountListDTO:
      type: object
      required:
        - metadata
        - tagAccounts
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        tagAccounts:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_TagHealth_TagAccountListItem'
    AuditRun_TagHealth_TagAccountsSortColumn:
      description: >-
        For `tag_loadtime_*` lower and upper bounds are correspondingly
        inclusive and exclusive
      type: string
      enum:
        - tag_account
        - tag_instance_count
        - tag_request_size_average
        - tag_load_time_below_500
        - tag_load_time_from_500_to_1000
        - tag_load_time_from_1000_to_2000
        - tag_load_time_above_2000
    AuditRun_TagHealth_TagAccountListItem:
      allOf:
        - $ref: '#/components/schemas/AuditRun_TagHealth_TagListItemTrait'
        - type: object
          required:
            - tagAccount
          properties:
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
    AuditRun_TagHealth_PageListDTO:
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_TagHealth_PageListItem'
    AuditRun_TagHealth_PageSortColumn:
      type: string
      enum:
        - page_url
        - final_page_url
        - page_load_time
        - page_status_code
        - final_page_status_code
        - tag_load_time_average
        - tag_request_size_average
        - tag_instance_count
        - broken_tag_count
    AuditRun_TagHealth_PageListItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
        - type: object
          required:
            - filteredTagLoadTimeAverage
            - filteredTagRequestSizeAverage
            - filteredTagInstanceCount
            - filteredBrokenTagCount
          properties:
            filteredTagLoadTimeAverage:
              $ref: '#/components/schemas/TagLoadTime'
            filteredTagRequestSizeAverage:
              $ref: '#/components/schemas/TagRequestSize'
            filteredTagInstanceCount:
              type: integer
              description: Number of tag requests on a page passing all applied filters
            filteredBrokenTagCount:
              type: integer
              description: >-
                Number of broken tag requests on a page passing all applied
                filters
    AuditRun_TagHealth_TagRequestSize:
      description: >-
        Tag request size in bytes. Should have `min` and/or `max` properties
        defined. `min` is inclusive and `max` is exclusive. `min` should be less
        than `max`.
      allOf:
        - $ref: '#/components/schemas/IntegerRangeFilterTrait'
    AuditRun_TagDuplicatesAndMultiples_RequestDTO:
      description: Request body with filters for Tag Duplicates & Multiples report
      type: object
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            primaryTagsOnly:
              type: boolean
              description: >-
                if true then return only pages/tags with primary tags else
                return all pages/tags
            tagId:
              $ref: '#/components/schemas/TagId'
            tagCategoryId:
              $ref: '#/components/schemas/TagCategoryId'
            tagVendorId:
              $ref: '#/components/schemas/TagVendorId'
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
    AuditRun_TagDuplicatesAndMultiples_FilteredRequestDTO:
      description: >-
        Request body with filters for Tag Duplicates & Multiples report with
        filters present in path removed
      type: object
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
    AuditRun_TagDuplicatesAndMultiples_SummaryDTO:
      type: object
      required:
        - totalPageCount
        - filteredPageCount
        - filteredUniqueTagCount
        - totalTagInstanceCount
        - filteredTagInstanceCount
        - filteredTagDuplicateCount
        - filteredTagMultipleCount
      properties:
        totalPageCount:
          type: integer
          description: Total number of pages audited
        filteredPageCount:
          type: integer
          description: Number of pages passing all applied filters
        filteredUniqueTagCount:
          type: integer
          description: Number of unique tag vendors passing all applied filters
        totalTagInstanceCount:
          type: integer
          description: Total number of tag requests discovered
        filteredTagInstanceCount:
          type: integer
          description: Number of tag requests passing all applied filters
        filteredTagDuplicateCount:
          type: integer
          description: Number of duplicate tag requests passing all applied filters
        filteredTagMultipleCount:
          type: integer
          description: >-
            Number of tag request instances that are not exact copies of each
            other and have the same account
    AuditRun_TagDuplicatesAndMultiples_TrendsDTO:
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_TagDuplicatesAndMultiples_TrendItem'
    AuditRun_TagDuplicatesAndMultiples_TrendItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - totalUniqueTagCount
            - totalTagInstanceCount
            - totalTagDuplicateCount
            - totalTagMultipleCount
          properties:
            totalUniqueTagCount:
              type: integer
            totalTagInstanceCount:
              type: integer
            totalTagDuplicateCount:
              type: integer
            totalTagMultipleCount:
              type: integer
    AuditRun_TagDuplicatesAndMultiples_TrendsEnum:
      type: string
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.TrendEnumCompatibleWithRunsGrid
      enum:
        - unique_tags
        - tag_requests
        - tag_duplicates
        - tag_multiples
    AuditRun_TagDuplicatesAndMultiples_TagsDTO:
      type: object
      required:
        - tags
      properties:
        tags:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_TagDuplicatesAndMultiples_TagsItem'
    AuditRun_TagDuplicatesAndMultiples_TagsItem:
      allOf:
        - $ref: '#/components/schemas/TagInfoTrait'
        - $ref: >-
            #/components/schemas/AuditRun_TagDuplicatesAndMultiples_TagsItemTrait
    AuditRun_TagDuplicatesAndMultiples_TagsItemTrait:
      type: object
      required:
        - filteredTagDuplicateCount
        - filteredTagDuplicatePageCount
        - filteredTagMultipleCount
        - filteredTagMultiplePageCount
        - filteredTagInstanceCount
      properties:
        filteredTagDuplicateCount:
          type: integer
        filteredTagDuplicatePageCount:
          type: integer
          description: >-
            Number of pages containing duplicate tag requests passing all
            applied filters
        filteredTagMultipleCount:
          type: integer
        filteredTagMultiplePageCount:
          type: integer
          description: >-
            Number of pages containing "multiple" tag requests passing all
            applied filters
        filteredTagInstanceCount:
          type: integer
          description: Number of tag requests passing all applied filters
    AuditRun_TagDuplicatesAndMultiples_TagAccountsSortColumn:
      type: string
      enum:
        - tag_account
        - tag_duplicates
        - duplicate_tag_pages
        - tag_multiples
        - multiple_tag_pages
        - tag_instance_count
    AuditRun_TagDuplicatesAndMultiples_TagAccountsDTO:
      type: object
      required:
        - metadata
        - tagAccounts
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        tagAccounts:
          type: array
          items:
            $ref: >-
              #/components/schemas/AuditRun_TagDuplicatesAndMultiples_TagAccountsItem
    AuditRun_TagDuplicatesAndMultiples_TagAccountsItem:
      allOf:
        - $ref: >-
            #/components/schemas/AuditRun_TagDuplicatesAndMultiples_TagsItemTrait
        - type: object
          required:
            - tagAccount
          properties:
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
    AuditRun_TagDuplicatesAndMultiples_PagesRequestDTO:
      allOf:
        - $ref: '#/components/schemas/AuditRun_TagDuplicatesAndMultiples_RequestDTO'
        - type: object
          properties:
            finalPageUrl:
              $ref: '#/components/schemas/PageUrlFilter'
            initialPageStatusCode:
              $ref: '#/components/schemas/IntegerFilter'
            finalPageStatusCode:
              $ref: '#/components/schemas/IntegerFilter'
            type:
              type: string
              enum:
                - tag_duplicates
                - tag_multiples
    AuditRun_TagDuplicatesAndMultiples_PagesDTO:
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_TagDuplicatesAndMultiples_PagesItem'
    AuditRun_TagDuplicatesAndMultiples_PagesSortColumn:
      type: string
      enum:
        - page_url
        - final_page_url
        - page_load_time
        - page_status_code
        - final_page_status_code
        - tag_duplicates
        - tag_multiples
    AuditRun_TagDuplicatesAndMultiples_PagesItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
        - type: object
          required:
            - filteredTagDuplicateCount
            - filteredTagMultipleCount
          properties:
            filteredTagDuplicateCount:
              type: integer
            filteredTagMultipleCount:
              type: integer
    AuditRun_VariableInventory_RequestDTO:
      description: Request body with filters for Variable Inventory report
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            primaryTagsOnly:
              type: boolean
              description: >-
                if true then return only pages/tags with primary tags else
                return all pages/tags
            tagId:
              $ref: '#/components/schemas/TagId'
            tagCategoryId:
              $ref: '#/components/schemas/TagCategoryId'
            tagVendorId:
              $ref: '#/components/schemas/TagVendorId'
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
    AuditRun_VariableInventory_FilteredRequestDTO:
      description: >-
        Request body for Variable Inventory report with filters present in path
        removed
      type: object
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
    AuditRun_VariableInventory_TagAccountRequestDTO:
      description: Request body for Variable Inventory report
      required:
        - tagId
        - tagAccount
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            tagId:
              $ref: '#/components/schemas/TagId'
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
    AuditRun_VariableInventory_TagAccountVariableRequestDTO:
      allOf:
        - $ref: '#/components/schemas/AuditRun_VariableInventory_TagAccountRequestDTO'
        - type: object
          required:
            - variableName
          properties:
            variableName:
              $ref: '#/components/schemas/VariableName'
    AuditRun_VariableInventory_TagAccountVariableValueRequestDTO:
      allOf:
        - $ref: >-
            #/components/schemas/AuditRun_VariableInventory_TagAccountVariableRequestDTO
        - type: object
          required:
            - variableValue
          properties:
            variableValue:
              $ref: '#/components/schemas/VariableValue'
    AuditRun_VariableInventory_SummaryDTO:
      description: Variable Inventory report summary
      type: object
      required:
        - totalPageCount
        - filteredPageCount
        - filteredUniqueTagCount
        - totalTagInstanceCount
        - filteredTagInstanceCount
        - totalUniqueVariableNameCount
        - filteredUniqueVariableNameCount
        - totalUniqueVariableValueCount
        - filteredUniqueVariableValueCount
      properties:
        totalPageCount:
          type: integer
          description: Total number of pages audited
        filteredPageCount:
          type: integer
          description: Number of pages passing all applied filters
        filteredUniqueTagCount:
          type: integer
          description: Number of unique tag vendors passing all applied filters
        totalTagInstanceCount:
          type: integer
          description: Total number of tag requests discovered
        filteredTagInstanceCount:
          type: integer
          description: Number of tag requests passing all applied filters
        totalUniqueVariableNameCount:
          type: integer
          description: Total number of unique variable names across all tags
        filteredUniqueVariableNameCount:
          type: integer
          description: >-
            Number of unique variable names across all tags passing all applied
            filters
        totalUniqueVariableValueCount:
          type: integer
          description: Total number of unique variable names across all tags
        filteredUniqueVariableValueCount:
          type: integer
          description: >-
            Number of unique variable names across all tags passing all applied
            filters
    AuditRun_VariableInventory_TrendsDTO:
      description: Variable Inventory trends overview (a.k.a. trendlines a.k.a. sparklines)
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          maxItems: 5
          items:
            $ref: '#/components/schemas/AuditRun_VariableInventory_TrendsItem'
    AuditRun_VariableInventory_TrendsItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - totalUniqueTagCount
            - totalTagInstanceCount
            - totalUniqueVariableNameCount
            - totalUniqueVariableValueCount
          properties:
            totalUniqueTagCount:
              type: integer
              description: Total number of unique tag vendors discovered
            totalTagInstanceCount:
              type: integer
              description: Total number of tag requests discovered
            totalUniqueVariableNameCount:
              type: integer
              description: Total number of unique variable names across all tags
            totalUniqueVariableValueCount:
              type: integer
              description: Total number of unique variable names across all tags
    AuditRun_VariableInventory_TrendsEnum:
      type: string
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.TrendEnumCompatibleWithRunsGrid
      enum:
        - unique_tags
        - tag_requests
        - unique_variables
        - unique_values
    AuditRun_VariableInventory_TagsDTO:
      description: Variable Inventory report tag accounts list
      type: object
      required:
        - metadata
        - tags
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        tags:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_VariableInventory_TagItem'
    AuditRun_VariableInventory_TagItem:
      allOf:
        - $ref: '#/components/schemas/TagInfoTrait'
        - type: object
          properties:
            tagAccounts:
              type: array
              items:
                $ref: '#/components/schemas/AuditRun_VariableInventory_TagAccountItem'
    AuditRun_VariableInventory_TagAccountItem:
      type: object
      properties:
        tagAccount:
          $ref: '#/components/schemas/TagAccount'
        totalPageCount:
          type: integer
          description: Total number of pages
        totalVariableCount:
          type: integer
          description: Total number of variables in tag account
    AuditRun_VariableInventory_TagAccountVariablesDTO:
      description: >-
        Variable Inventory report tag account variables list. This list will
        include the top 500 variables with the highest variableSetPageCount.
      type: object
      required:
        - variables
      properties:
        variables:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_VariableInventory_VariableItem'
    AuditRun_VariableInventory_TagVariablesSortColumn:
      description: Sorting by `variable_name` still sorts variables by `friendlyName` first
      type: string
      enum:
        - variable_name
        - unique_values
        - variable_set_pages
        - variable_not_set_pages
    AuditRun_VariableInventory_VariableItem:
      type: object
      required:
        - variableName
        - uniqueValueCount
        - variableNotSetPageCount
        - variableSetPageCount
      properties:
        variableName:
          $ref: '#/components/schemas/VariableName'
        friendlyName:
          type: string
          description: Human-readable variable name
        uniqueValueCount:
          type: integer
          description: Number of unique values of the variable
        variableNotSetPageCount:
          type: integer
          description: Number of pages where variable is not set
        variableSetPageCount:
          type: integer
          description: Number of pages where variable is set
    AuditRun_VariableInventory_PagesDTO:
      description: Tag Inventory pages list data
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_VariableInventory_PagesItem'
    AuditRun_VariableInventory_PagesSortColumn:
      type: string
      enum:
        - page_url
        - final_page_url
        - page_load_time
        - page_status_code
        - final_page_status_code
        - variable_count
    AuditRun_VariableInventory_PagesItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
        - type: object
          required:
            - variableCount
          properties:
            variableCount:
              type: integer
              description: Number of unique tag (account) variables on a page
    AuditRun_VariableInventory_VariableNotSetPagesDTO:
      description: Tag Inventory pages list data
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: >-
              #/components/schemas/AuditRun_VariableInventory_VariableNotSetPagesItem
    AuditRun_VariableInventory_VariableNotSetPagesItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
    AuditRun_VariableInventory_VariableValuesSortColumn:
      type: string
      enum:
        - variable_value
        - page_count
    AuditRun_VariableInventory_UniqueVariableValuesDTO:
      description: Variable Inventory - unique variable values list data
      type: object
      required:
        - metadata
        - variableValues
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        variableValues:
          type: array
          items:
            $ref: >-
              #/components/schemas/AuditRun_VariableInventory_UniqueVariableValuesItem
    AuditRun_VariableInventory_UniqueVariableValuesItem:
      type: object
      properties:
        variableValue:
          $ref: '#/components/schemas/VariableValue'
        pageCount:
          type: integer
          description: >-
            Number of pages containing specific variable value and passing all
            filters
        tagWithVariableValueCount:
          type: integer
          description: >-
            Number of tag requests containing this specific variable value and
            passing all filters
    AuditRun_VariableInventory_VariableValuePagesDTO:
      description: Variable Inventory - variable values pages list data
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: >-
              #/components/schemas/AuditRun_VariableInventory_VariableValuePageItem
    AuditRun_VariableInventory_VariableValuePageItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
        - type: object
          required:
            - tagWithVariableValueCount
          properties:
            tagWithVariableValueCount:
              type: integer
              default: Number of tag requests with the variable value
    AuditRun_VariableInventory_VariableValuePageExportItem:
      allOf:
        - $ref: >-
            #/components/schemas/AuditRun_VariableInventory_VariableValuePageItem
        - type: object
          required:
            - variableValue
          properties:
            variableValue:
              type: string
    AuditRun_CookieInventory_RequestDTO:
      description: Request body with filters for Cookie Inventory report
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - $ref: '#/components/schemas/CookieFiltersTrait'
        - type: object
          properties:
            cookieName:
              $ref: '#/components/schemas/StringInclusionFilter'
            cookieDomain:
              $ref: '#/components/schemas/StringInclusionFilter'
            partyType:
              $ref: '#/components/schemas/CookiePartyType'
            secure:
              type: boolean
            sameSite:
              $ref: '#/components/schemas/CookieSameSiteExtended'
            cookieSize:
              $ref: >-
                #/components/schemas/AuditRun_CookieInventory_CookieSizeRangeFilter
            allThirdPartyCookies:
              type: boolean
              description: Conflicts with `partyType`, but has higher priority
            httpOnly:
              type: boolean
            expirationType:
              $ref: '#/components/schemas/CookieExpirationType'
            cookieDuration:
              $ref: >-
                #/components/schemas/AuditRun_CookieInventory_CookieDurationRangeFilter
            initiatorUrl:
              $ref: '#/components/schemas/StringInclusionFilter'
            initiatorUrlDomain:
              $ref: '#/components/schemas/StringInclusionFilter'
            anyRelatedTag:
              type: boolean
              description: Show all cookies with any related tag
            tagId:
              $ref: '#/components/schemas/TagId'
            tagCategoryId:
              $ref: '#/components/schemas/TagCategoryId'
            tagVendorId:
              $ref: '#/components/schemas/TagVendorId'
            partitionKeyIsSet:
              type: boolean
    AuditRun_CookieInventory_CookieSizeRangeFilter:
      description: >-
        Cookie size in bytes. Should have `min` and/or `max` properties defined.
        `min` is inclusive and `max` is exclusive
      allOf:
        - $ref: '#/components/schemas/IntegerRangeFilterTrait'
    AuditRun_CookieInventory_CookieDurationRangeFilter:
      description: >-
        Cookie duration in minutes. Should have `min` and/or `max` properties
        defined. `min` is inclusive and `max` is exclusive. Ignored when
        expirationType == "session"
      allOf:
        - $ref: '#/components/schemas/IntegerRangeFilterTrait'
    AuditRun_CookieInventory_SummaryDTO:
      description: Cookie Inventory report summary
      type: object
      required:
        - totalPageCount
        - filteredPageCount
        - totalUniqueCookieCount
        - filteredUniqueCookieCount
        - totalFirstPartyCookieCount
        - filteredFirstPartyCookieCount
        - totalThirdPartyCookieCount
        - filteredThirdPartyCookieCount
        - filteredNonSecureCookieCount
        - filteredSameSiteEmptyCookieCount
        - totalUniqueCookieDomainCount
        - filteredUniqueCookieDomainCount
      properties:
        totalPageCount:
          type: integer
          description: Total number of pages audited
        filteredPageCount:
          type: integer
          description: Number of pages passing all applied filters
        totalUniqueCookieCount:
          type: integer
          description: Total number of unique cookies discovered
        filteredUniqueCookieCount:
          type: integer
          description: Number of unique cookies passing all applied filters
        totalFirstPartyCookieCount:
          type: integer
          description: Total number of first-party cookies discovered
        filteredFirstPartyCookieCount:
          type: integer
          description: Number of first-party cookies passing all applied filters
        totalThirdPartyCookieCount:
          type: integer
          description: Total number of third-party cookies discovered
        filteredThirdPartyCookieCount:
          type: integer
          description: Number of third-party cookies passing all applied filters
        filteredNonSecureCookieCount:
          type: integer
          description: Number of non-secure cookies passing all applied filters
        filteredSameSiteEmptyCookieCount:
          type: integer
          description: >-
            Number of cookies with empty same site attribute passing all applied
            filters
        totalUniqueCookieDomainCount:
          type: integer
          description: Total number of unique cookie domains discovered
        filteredUniqueCookieDomainCount:
          type: integer
          description: Number of unique cookie domains passing all applied filters
    AuditRun_CookieInventory_TrendsDTO:
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          maxItems: 5
          items:
            $ref: '#/components/schemas/AuditRun_CookieInventory_TrendsItem'
    AuditRun_CookieInventory_TrendsItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - totalUniqueCookieCount
            - totalFirstPartyCookieCount
            - totalThirdPartyCookieCount
            - totalNonSecureCookieCount
            - totalSameSiteEmptyCookieCount
          properties:
            totalUniqueCookieCount:
              type: integer
            totalFirstPartyCookieCount:
              type: integer
            totalThirdPartyCookieCount:
              type: integer
            totalNonSecureCookieCount:
              type: integer
            totalSameSiteEmptyCookieCount:
              type: integer
    AuditRun_CookieInventory_TrendsEnum:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.TrendEnumCompatibleWithRunsGrid
      type: string
      enum:
        - unique_cookies
        - first_party
        - third_party
        - non_secure_count
        - same_site_empty
    AuditRun_CookieInventory_PagesListDTO:
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_CookieInventory_PagesListItem'
    AuditRun_CookieInventory_PageSortColumn:
      type: string
      enum:
        - page_url
        - final_page_url
        - page_status_code
        - final_page_status_code
        - page_load_time
        - cookie_count
        - total_cookie_size
    AuditRun_CookieInventory_PagesListItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
        - type: object
          required:
            - cookieCount
            - totalCookieSize
          properties:
            cookieCount:
              type: integer
              description: Number of cookies on a page
            totalCookieSize:
              $ref: '#/components/schemas/CookieSize'
    AuditRun_CookieInventory_CookiesListDTO:
      type: object
      required:
        - metadata
        - cookies
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        cookies:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_CookieInventory_CookiesListItem'
    AuditRun_CookieInventory_CookiesSortColumn:
      type: string
      enum:
        - page_count
        - name
        - domain
        - party_type
        - expiration_type
        - secure
        - same_site
        - http_only
        - avg_size
        - min_duration_in_minutes
        - max_duration_in_minutes
        - initiator_tag_count
        - unique_initiator_count
        - partition_key
        - cookie_changed_during
    AuditRun_CookieInventory_CookiesListItem:
      allOf:
        - $ref: '#/components/schemas/AuditRun_CookieInventory_CookiesListItemTrait'
        - $ref: '#/components/schemas/AggregatedCookieTrait'
        - type: object
          required:
            - averageSize
            - filteredPageCount
          properties:
            averageSize:
              $ref: '#/components/schemas/CookieSize'
            filteredPageCount:
              type: integer
              description: Number of pages this cookie was found on
            minDurationInMinutes:
              type: integer
              description: Minimum cookie duration in minutes
            maxDurationInMinutes:
              type: integer
              description: Maximum cookie duration in minutes
            initiators:
              type: array
              items:
                $ref: >-
                  #/components/schemas/AuditRun_CookieInventory_CookieInitiatorItem
            initiatorTagIds:
              type: array
              description: List of tag IDs, associated with initiators that set this cookie
              minItems: 0
              items:
                type: integer
            initiatorTotalCount:
              type: integer
              description: Total number of unique initiators that set this cookie
            partitionKey:
              type: string
    AuditRun_CookieInventory_CookieInitiatorItem:
      type: object
      description: >-
        Represents unique initiator for the cookie, deduplicated by
        `initiatorType`, `tagId` and `urlDomain`
      required:
        - initiatorType
        - foundDuring
        - instanceCount
      properties:
        initiatorType:
          $ref: '#/components/schemas/CookieInitiatorTypeEnum'
        tagId:
          $ref: '#/components/schemas/TagId'
        urlDomain:
          type: string
          description: Domain part of initiator's URL
        foundDuring:
          type: array
          description: List of phases during which this initiator was observed
          minItems: 1
          items:
            $ref: '#/components/schemas/CookieOriginTypeEnum'
        instanceCount:
          type: integer
          description: Number of instances of this initiator across all pages
    AuditRun_CookieInventory_CookiesListItemTrait:
      type: object
      required:
        - name
        - domain
        - partyType
        - expirationType
        - secure
        - httpOnly
      properties:
        name:
          $ref: '#/components/schemas/CookieName'
        domain:
          $ref: '#/components/schemas/CookieDomain'
        partyType:
          $ref: '#/components/schemas/CookiePartyType'
        expirationType:
          $ref: '#/components/schemas/CookieExpirationType'
        sameSite:
          $ref: '#/components/schemas/CookieSameSite'
        secure:
          type: boolean
        httpOnly:
          type: boolean
    CookieOriginDto:
      type: object
      properties:
        originType:
          $ref: '#/components/schemas/CookieOriginTypeEnum'
        action:
          $ref: '#/components/schemas/CookieChangeTypeEnum'
    AuditRun_CookieInventory_CookiePagesRequestDTO:
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - $ref: '#/components/schemas/CookieFiltersTrait'
        - type: object
          required:
            - cookie
          properties:
            cookie:
              $ref: '#/components/schemas/AuditRun_CookieInventory_SelectedCookie'
            cookieSize:
              $ref: >-
                #/components/schemas/AuditRun_CookieInventory_CookieSizeRangeFilter
            initiatorUrl:
              $ref: '#/components/schemas/StringInclusionFilter'
            initiatorUrlDomain:
              $ref: '#/components/schemas/StringInclusionFilter'
            anyRelatedTag:
              type: boolean
              description: Show all cookies with any related tag
            tagId:
              $ref: '#/components/schemas/TagId'
            tagCategoryId:
              $ref: '#/components/schemas/TagCategoryId'
            tagVendorId:
              $ref: '#/components/schemas/TagVendorId'
    AuditRun_CookieInventory_SelectedCookie:
      description: >
        - `partitionKey` is absent — property is ignored for backward
        compatibility,

        - `partitionKey` is present and `partitionKey.value` is absent — cookies
        in old runs without partition key and new runs with partition key set to
        null,

        - `partitionKey` is present and `partitionKey.value` is present —
        cookies in new runs with requested partition key
      allOf:
        - $ref: '#/components/schemas/AuditRun_CookieInventory_CookiesListItemTrait'
        - type: object
          properties:
            partitionKey:
              $ref: '#/components/schemas/CookiePartitionKey'
    AuditRun_CookieInventory_DomainsListDTO:
      type: object
      required:
        - metadata
        - domains
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        domains:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_CookieInventory_DomainsItem'
    AuditRun_CookieInventory_DomainsItem:
      type: object
      required:
        - domain
        - partyType
        - pageCount
      properties:
        domain:
          $ref: '#/components/schemas/CookieDomain'
        partyType:
          $ref: '#/components/schemas/CookiePartyType'
        pageCount:
          type: integer
    AuditRun_CookieInventory_DomainSortColumn:
      type: string
      enum:
        - domain
        - page_count
        - party_type
      default: domain
    AuditRun_BrowserLogs_RequestDTO:
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            pageStatusCode:
              $ref: '#/components/schemas/StatusCodeEnum'
            tagId:
              $ref: '#/components/schemas/TagId'
            tagCategoryId:
              $ref: '#/components/schemas/TagCategoryId'
            tagVendorId:
              $ref: '#/components/schemas/TagVendorId'
            level:
              $ref: '#/components/schemas/BrowserLogMessageLevelEnum'
            messageText:
              $ref: '#/components/schemas/StringInclusionFilter'
            anyRelatedTag:
              type: boolean
              description: Show all messages with any related tag
    AuditRun_BrowserLogs_SummaryDTO:
      description: Log counts are actually filtered
      allOf:
        - $ref: '#/components/schemas/AuditRun_BrowserLogs_MessageCountTrait'
        - type: object
          required:
            - totalPageCount
            - filteredPageCount
          properties:
            totalPageCount:
              type: integer
              description: Total number of pages audited
            filteredPageCount:
              type: integer
              description: Number of pages passing all applied filters
    AuditRun_BrowserLogs_MessageCountTrait:
      type: object
      required:
        - errorLogCount
        - warnLogCount
        - infoLogCount
        - debugLogCount
        - otherLogCount
      properties:
        errorLogCount:
          type: integer
          description: Number of error level messages
        warnLogCount:
          type: integer
          description: Number of warn level messages
        infoLogCount:
          type: integer
          description: Number of info level messages
        debugLogCount:
          type: integer
          description: Number of debug level messages
        otherLogCount:
          type: integer
          description: Number of other level messages
    AuditRun_BrowserLogs_TrendsDTO:
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_BrowserLogs_TrendsItem'
    AuditRun_BrowserLogs_TrendsItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - $ref: '#/components/schemas/AuditRun_BrowserLogs_MessageCountTrait'
    AuditRun_BrowserLogs_TrendsEnum:
      type: string
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.TrendEnumCompatibleWithRunsGrid
      enum:
        - error_logs
        - warn_logs
        - info_logs
        - debug_logs
        - other_logs
    AuditRun_BrowserLogs_MessagesDTO:
      type: object
      required:
        - messages
        - metadata
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        messages:
          type: array
          description: Browser log messages discovered during audit run.
          items:
            $ref: '#/components/schemas/AuditRun_BrowserLogs_MessagesItem'
    AuditRun_BrowserLogs_MessagesItem:
      type: object
      required:
        - level
        - message
        - logCount
        - pageCount
      properties:
        level:
          $ref: '#/components/schemas/BrowserLogMessageLevelEnum'
        message:
          type: string
        logCount:
          type: integer
        pageCount:
          type: integer
        relatedTag:
          $ref: '#/components/schemas/AuditRun_BrowserLogs_Messages_TagItem'
    AuditRun_BrowserLogs_Messages_TagItem:
      allOf:
        - $ref: '#/components/schemas/TagInfoTrait'
    AuditRun_BrowserLogs_MessagesSortColumn:
      type: string
      enum:
        - level
        - message
        - instances_count
        - pages_count
        - related_tag
    AuditRun_BrowserLogs_PagesRequestDTO:
      description: If `message` filter is present, `messageText` filter will be ignored
      allOf:
        - $ref: '#/components/schemas/AuditRun_BrowserLogs_RequestDTO'
        - type: object
          properties:
            message:
              $ref: '#/components/schemas/AuditRun_BrowserLogs_SelectedMessage'
    AuditRun_BrowserLogs_SelectedMessage:
      type: object
      required:
        - message
        - level
      properties:
        message:
          type: string
          minLength: 1
        level:
          $ref: '#/components/schemas/BrowserLogMessageLevelEnum'
    AuditRun_BrowserLogs_PagesDTO:
      description: Browser Logs pages list data
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_BrowserLogs_PagesItem'
    AuditRun_BrowserLogs_PagesSortColumn:
      type: string
      enum:
        - page_url
        - final_page_url
        - page_load_time
        - page_status_code
        - final_page_status_code
        - error_log_count
        - warn_log_count
        - info_log_count
        - debug_log_count
        - other_log_count
    AuditRun_BrowserLogs_PagesItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
        - $ref: '#/components/schemas/AuditRun_BrowserLogs_MessageCountTrait'
    AuditRun_FileChanges_RequestDTO:
      description: Request body with filters for File Changes report
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            pageStatusCode:
              $ref: '#/components/schemas/StatusCodeEnum'
            primaryTagsOnly:
              type: boolean
              description: >-
                if true then return only pages/tags with primary tags else
                return all pages/tags
            tagId:
              $ref: '#/components/schemas/TagId'
            tagCategoryId:
              $ref: '#/components/schemas/TagCategoryId'
            tagVendorId:
              $ref: '#/components/schemas/TagVendorId'
            dateDifference:
              $ref: '#/components/schemas/AuditRun_FileChanges_DateDifferenceBounds'
            sizeDifference:
              $ref: '#/components/schemas/AuditRun_FileChanges_SizeDifferenceBounds'
            filename:
              $ref: '#/components/schemas/RequestFilename'
            changeType:
              $ref: '#/components/schemas/AuditRun_FileChanges_FileChangeType'
            anyRelatedTag:
              type: boolean
              description: Show all files with any related tag
    AuditRun_FileChanges_DateDifferenceBounds:
      type: object
      description: >-
        Filters absolute difference values, e.g. when min = 200 then -300 diff
        passes filter. Should have `min` and/or `max` properties defined. `min`
        is inclusive, `max` is exclusive.
      properties:
        min:
          $ref: >-
            #/components/schemas/AuditRun_FileChanges_DateDifferenceBoundInMinutes
        max:
          $ref: >-
            #/components/schemas/AuditRun_FileChanges_DateDifferenceBoundInMinutes
    AuditRun_FileChanges_DateDifferenceBoundInMinutes:
      type: integer
      description: date difference in minutes
      minimum: 1
    AuditRun_FileChanges_SizeDifferenceBounds:
      type: object
      description: >-
        Filters absolute difference values, e.g. when min = 200 then -300 diff
        passes filter. Should have `min` and/or `max` properties defined. `min`
        is inclusive, `max` is exclusive.
      properties:
        min:
          $ref: '#/components/schemas/AuditRun_FileChanges_SizeDifferenceBoundInBytes'
        max:
          $ref: '#/components/schemas/AuditRun_FileChanges_SizeDifferenceBoundInBytes'
    AuditRun_FileChanges_SizeDifferenceBoundInBytes:
      type: integer
      description: File size change in number of bytes
      minimum: 1
    AuditRun_FileChanges_SummaryDTO:
      type: object
      required:
        - totalPageCount
        - filteredPageCount
        - totalChangedFileCount
        - filteredChangedFileCount
        - totalNewFileCount
        - filteredNewFileCount
        - totalFileDateDifferenceCount
        - filteredFileDateDifferenceCount
        - totalFileSizeDifferenceCount
        - filteredFileSizeDifferenceCount
      properties:
        totalPageCount:
          type: integer
          description: Total number of pages audited
        filteredPageCount:
          type: integer
          description: Number of pages passing all applied filters
        totalChangedFileCount:
          type: integer
          description: Total number of changed files discovered
        filteredChangedFileCount:
          type: integer
          description: Number of changed files passing all applied filters
        totalNewFileCount:
          type: integer
          description: Total number of new files discovered
        filteredNewFileCount:
          type: integer
          description: Number of new files discovered that pass all applied filters
        totalFileDateDifferenceCount:
          type: integer
          description: Total number of files with date change discovered
        filteredFileDateDifferenceCount:
          type: integer
          description: Number of files with date change passing all applied filters
        totalFileSizeDifferenceCount:
          type: integer
          description: Total number of files with size change discovered
        filteredFileSizeDifferenceCount:
          type: integer
          description: Number of files with size change passing all applied filters
    AuditRun_FileChanges_FilesSortColumn:
      type: string
      enum:
        - largest_size_diff
        - page_count
        - tag
        - filename
        - change_type
        - domain
        - party_type
        - largest_date_diff
    AuditRun_FileChanges_FilesDTO:
      type: object
      required:
        - metadata
        - files
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        files:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_FileChanges_FileItem'
    AuditRun_FileChanges_FileItem:
      description: If only one of them is null then this property has "unknown" change
      allOf:
        - $ref: '#/components/schemas/AuditRun_FileChanges_FileItemTrait'
        - type: object
          required:
            - pageCount
          properties:
            tag:
              $ref: '#/components/schemas/AuditRun_FileChanges_FileItemTag'
            largestDateDifference:
              $ref: >-
                #/components/schemas/AuditRun_FileChanges_DateDifferenceInMinutes
            largestSizeDifference:
              $ref: '#/components/schemas/AuditRun_FileChanges_SizeDifferenceInBytes'
            pageCount:
              type: integer
    AuditRun_FileChanges_FileChangeType:
      type: string
      enum:
        - new_file
        - not_changed
        - changed_file
        - deleted_file
        - unknown
    AuditRun_FileChanges_DateDifferenceInMinutes:
      type: integer
      description: >-
        Number of minutes for date difference between 2 file versions, can be
        negative
    AuditRun_FileChanges_SizeDifferenceInBytes:
      type: integer
      description: >-
        File size change in number of bytes between 2 file versions, can be
        negative
    AuditRun_FileChanges_FileItemTrait:
      type: object
      required:
        - filename
        - requestDomain
        - partyType
        - fileChangeType
      properties:
        filename:
          $ref: '#/components/schemas/RequestFilename'
        requestDomain:
          $ref: '#/components/schemas/RequestDomain'
        partyType:
          $ref: '#/components/schemas/NetworkRequestPartyType'
        fileChangeType:
          $ref: '#/components/schemas/AuditRun_FileChanges_FileChangeType'
    NetworkRequestPartyType:
      type: string
      description: >-
        Indicates the level of similarity of network request URL domain and its
        page URL domain
      enum:
        - 1st_party
        - 3rd_party
    AuditRun_FileChanges_FileItemTag:
      allOf:
        - $ref: '#/components/schemas/TagInfoTrait'
    AuditRun_FileChanges_FilePagesRequestDTO:
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          required:
            - file
          properties:
            pageStatusCode:
              $ref: '#/components/schemas/StatusCodeEnum'
            dateDifference:
              $ref: '#/components/schemas/AuditRun_FileChanges_DateDifferenceBounds'
            sizeDifference:
              $ref: '#/components/schemas/AuditRun_FileChanges_SizeDifferenceBounds'
            file:
              $ref: '#/components/schemas/AuditRun_FileChanges_PagesRequestFile'
            changeType:
              $ref: '#/components/schemas/AuditRun_FileChanges_FileChangeType'
    AuditRun_FileChanges_PagesRequestFile:
      allOf:
        - $ref: '#/components/schemas/AuditRun_FileChanges_FileItemTrait'
        - type: object
          properties:
            tagId:
              $ref: '#/components/schemas/TagId'
    AuditRun_FileChanges_PagesSortColumn:
      type: string
      enum:
        - page_url
        - final_page_url
        - page_load_time
        - page_status_code
        - final_page_status_code
    AuditRun_FileChanges_PagesDTO:
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_FileChanges_PageItem'
    AuditRun_FileChanges_PageItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
    RunData_ItemTypeEnum:
      type: string
      enum:
        - audit
    RunData_RequestDTO:
      type: array
      items:
        $ref: '#/components/schemas/RunData_RequestItemDTO'
    RunData_RequestItemDTO:
      type: object
      required:
        - itemType
        - itemId
        - runId
      properties:
        itemType:
          $ref: '#/components/schemas/RunData_ItemTypeEnum'
        itemId:
          type: integer
          format: int64
          example: 107239
        runId:
          $ref: '#/components/schemas/RunId'
    RunData_Tags_SortColumn:
      type: string
      enum:
        - tag_name
    RunData_Cookies_SortColumn:
      type: string
      enum:
        - cookie_name
        - cookie_domain
    RunData_Request_Domains_SortColumn:
      type: string
      enum:
        - request_domain
    RunData_TagItemDTO:
      type: object
      properties:
        accounts:
          type: array
          maxItems: 500
          uniqueItems: true
          items:
            $ref: '#/components/schemas/TagAccount'
        tagId:
          $ref: '#/components/schemas/TagId'
        tagName:
          type: string
    RunData_CookieItemDTO:
      type: object
      properties:
        domain:
          type: string
        name:
          type: string
    RunData_RequestDomainItemDTO:
      type: object
      properties:
        domain:
          type: string
        countries:
          type: array
          items:
            $ref: '#/components/schemas/RunData_RequestDomainCountryDTO'
    RunData_RequestDomainCountryDTO:
      type: object
      properties:
        countryCode:
          $ref: '#/components/schemas/CountryCode'
        countryName:
          type: string
        countryCodeId:
          type: integer
        continentId:
          type: integer
        continentName:
          type: string
    RunData_TagsDTO:
      type: object
      required:
        - metadata
        - tags
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        tags:
          type: array
          items:
            $ref: '#/components/schemas/RunData_TagItemDTO'
    RunData_CookiesDTO:
      type: object
      required:
        - metadata
        - cookies
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        cookies:
          type: array
          items:
            $ref: '#/components/schemas/RunData_CookieItemDTO'
    RunData_RequestDomains:
      type: object
      required:
        - metadata
        - requestDomains
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        requestDomains:
          type: array
          items:
            $ref: '#/components/schemas/RunData_RequestDomainItemDTO'
    AuditRun_CookiePrivacy_RequestDTO:
      description: >-
        Request body with filters for Cookie Privacy report.
        `consentCategorySnapshotId` is deprecated, need to use
        `consentCategoryId` instead
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - $ref: '#/components/schemas/CookieFiltersTrait'
        - type: object
          properties:
            cookieName:
              $ref: '#/components/schemas/StringInclusionFilter'
            cookieDomain:
              $ref: '#/components/schemas/StringInclusionFilter'
            consentCategoryId:
              $ref: '#/components/schemas/ConsentCategoryId'
            consentCategorySnapshotId:
              $ref: '#/components/schemas/ConsentCategorySnapshotId'
            consentCategoryComplianceStatus:
              $ref: '#/components/schemas/ConsentCategoryComplianceStatus'
    AuditRun_CookiePrivacy_SummaryDTO:
      description: Cookie Privacy report summary
      type: object
      required:
        - totalPageCount
        - filteredPageCount
        - totalUniqueCookieCount
        - filteredUniqueCookieCount
        - totalApprovedCookieCount
        - filteredApprovedCookieCount
        - totalUnapprovedCookieCount
        - filteredUnapprovedCookieCount
        - filteredPageWithUnapprovedCookieCount
        - runHasNoConsentCategoriesAssigned
      properties:
        totalPageCount:
          type: integer
          description: Total number of pages audited
        filteredPageCount:
          type: integer
          description: Number of pages passing all applied filters
        totalUniqueCookieCount:
          type: integer
          description: >-
            Total number of unique cookies discovered. Cookie uniqueness
            determined by cookie name and domain
        filteredUniqueCookieCount:
          type: integer
          description: Number of unique cookies passing all applied filters
        totalApprovedCookieCount:
          type: integer
          description: Total number of approved cookies discovered
        filteredApprovedCookieCount:
          type: integer
          description: Number of approved cookies passing all applied filters
        totalUnapprovedCookieCount:
          type: integer
          description: Total number of unapproved cookies discovered
        filteredUnapprovedCookieCount:
          type: integer
          description: Number of unapproved cookies passing all applied filters
        filteredPageWithUnapprovedCookieCount:
          type: integer
          description: Number of pages with unapproved cookies passing all applied filters
        runHasNoConsentCategoriesAssigned:
          $ref: '#/components/schemas/RunHasNoConsentCategoriesAssigned'
    AuditRun_CookiePrivacy_TrendsDTO:
      description: Cookie Privacy report trends
      required:
        - runs
      properties:
        runs:
          type: array
          maxItems: 5
          items:
            $ref: '#/components/schemas/AuditRun_CookiePrivacy_TrendItem'
    AuditRun_CookiePrivacy_TrendItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - totalUniqueCookieCount
            - totalApprovedCookieCount
            - totalUnapprovedCookieCount
          properties:
            totalUniqueCookieCount:
              type: integer
              description: >-
                Total number of unique cookies discovered. Cookie uniqueness
                determined same as in Cookie Inventory
            totalApprovedCookieCount:
              type: integer
              description: Total number of approved cookies found in audit run
            totalUnapprovedCookieCount:
              type: integer
              description: Total number of unapproved cookies found in audit run
    AuditRun_CookiePrivacy_TrendsEnum:
      type: string
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.TrendEnumCompatibleWithRunsGrid
      enum:
        - unique_cookies
        - approved_cookies
        - unapproved_cookies
    AuditRun_CookiePrivacy_CookiesComplianceDTO:
      description: Cookie Compliance data
      type: object
      required:
        - metadata
        - cookies
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        cookies:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_CookiePrivacy_CookieItem'
    AuditRun_CookiePrivacy_CookieItem:
      allOf:
        - $ref: '#/components/schemas/AggregatedCookieTrait'
        - type: object
          required:
            - cookieName
            - cookieDomain
            - filteredPageCount
          properties:
            cookieName:
              $ref: '#/components/schemas/CookieName'
            cookieDomain:
              $ref: '#/components/schemas/CookieDomain'
            consentCategoryComplianceStatus:
              $ref: '#/components/schemas/ConsentCategoryComplianceStatus'
            consentCategoryName:
              $ref: '#/components/schemas/ConsentCategoryName'
            consentCategoryId:
              $ref: '#/components/schemas/ConsentCategoryId'
            consentCategorySnapshotId:
              $ref: '#/components/schemas/ConsentCategorySnapshotId'
            filteredPageCount:
              type: integer
    AuditRun_CookiePrivacy_CookiesSortColumn:
      type: string
      enum:
        - compliance_status
        - page_count
        - cookie_name
        - cookie_domain
        - consent_category_name
        - cookie_changed_during
    AuditRun_CookiePrivacy_CookiePagesRequestDTO:
      description: '`cookieName` and `cookieDomain` are deprecated'
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - $ref: '#/components/schemas/CookieFiltersTrait'
        - type: object
          properties:
            cookieName:
              deprecated: true
              type: string
              description: Cookie name
            cookieDomain:
              deprecated: true
              type: string
              description: Cookie domain; preceding dot removed
            cookie:
              type: object
              required:
                - name
                - domain
              properties:
                name:
                  $ref: '#/components/schemas/CookieName'
                domain:
                  $ref: '#/components/schemas/CookieDomain'
    AuditRun_CookiePrivacy_PagesDTO:
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_CookiePrivacy_PageItem'
    AuditRun_CookiePrivacy_PageItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
        - type: object
          required:
            - cookieCount
          properties:
            cookieCount:
              type: integer
              description: Number of distinct cookie name+domain pairs on a page
    AuditRun_CookiePrivacy_PagesSortColumn:
      type: string
      enum:
        - page_url
        - final_page_url
        - page_load_time
        - page_status_code
        - final_page_status_code
        - cookie_count
    AuditRun_TagPrivacy_RequestDTO:
      description: >-
        Request body with filters for Tag Privacy report.
        `consentCategorySnapshotId` is deprecated, need to use
        `consentCategoryId` instead
      type: object
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            primaryTagsOnly:
              type: boolean
              description: >-
                If true then return only pages/tags with primary tags else
                return all pages/tags
            tagId:
              $ref: '#/components/schemas/TagId'
            tagCategoryId:
              $ref: '#/components/schemas/TagCategoryId'
            tagVendorId:
              $ref: '#/components/schemas/TagVendorId'
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
            consentCategoryId:
              $ref: '#/components/schemas/ConsentCategoryId'
            consentCategorySnapshotId:
              $ref: '#/components/schemas/ConsentCategorySnapshotId'
            consentCategoryComplianceStatus:
              $ref: '#/components/schemas/ConsentCategoryComplianceStatus'
    AuditRun_TagPrivacy_SummaryDTO:
      description: Tag Privacy report summary
      type: object
      required:
        - totalPageCount
        - filteredPageCount
        - totalUniqueTagCount
        - filteredUniqueTagCount
        - totalApprovedTagCount
        - filteredApprovedTagCount
        - totalUnapprovedTagCount
        - filteredUnapprovedTagCount
        - filteredPageWithUnapprovedTagCount
        - runHasNoConsentCategoriesAssigned
      properties:
        totalPageCount:
          type: integer
          description: Total number of pages audited
        filteredPageCount:
          type: integer
          description: Number of pages passing all applied filters
        totalUniqueTagCount:
          type: integer
          description: Total number of unique tag vendors discovered
        filteredUniqueTagCount:
          type: integer
          description: Number of unique tag vendors passing all applied filters
        totalApprovedTagCount:
          type: integer
          description: Total number of approved tag vendors discovered
        filteredApprovedTagCount:
          type: integer
          description: Number of approved tags passing all applied filters
        totalUnapprovedTagCount:
          type: integer
          description: Total number of unapproved tag vendors discovered
        filteredUnapprovedTagCount:
          type: integer
          description: Number of unapproved tags passing all applied filters
        filteredPageWithUnapprovedTagCount:
          type: integer
          description: Number of pages with unapproved tags passing all applied filters
        runHasNoConsentCategoriesAssigned:
          type: boolean
          description: |
            When TRUE, run did not have any consent categories assigned.
            When NOT specified or FALSE, it had at least one.
    AuditRun_TagPrivacy_TrendsDTO:
      description: Tag Privacy report trends
      required:
        - runs
      properties:
        runs:
          type: array
          maxItems: 5
          items:
            $ref: '#/components/schemas/AuditRun_TagPrivacy_TrendItem'
    AuditRun_TagPrivacy_TrendItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - totalUniqueTagCount
            - totalApprovedTagCount
            - totalUnapprovedTagCount
          properties:
            totalUniqueTagCount:
              type: integer
              description: Total number of unique tag vendors discovered
            totalApprovedTagCount:
              type: integer
              description: Total number of approved tags found in audit run
            totalUnapprovedTagCount:
              type: integer
              description: Total number of unapproved tags found in audit run
    AuditRun_TagPrivacy_TrendsEnum:
      type: string
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.TrendEnumCompatibleWithRunsGrid
      enum:
        - unique_tags
        - approved_tags
        - unapproved_tags
    AuditRun_TagPrivacy_TagsComplianceDTO:
      description: Tag Compliance data
      type: object
      required:
        - metadata
        - tags
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        tags:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_TagPrivacy_TagItem'
    AuditRun_TagPrivacy_TagItem:
      allOf:
        - $ref: '#/components/schemas/TagInfoTrait'
        - type: object
          required:
            - tagAccount
            - consentCategoryComplianceStatus
            - filteredPageCount
          properties:
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
            consentCategoryComplianceStatus:
              $ref: '#/components/schemas/ConsentCategoryComplianceStatus'
            consentCategorySnapshotId:
              $ref: '#/components/schemas/ConsentCategorySnapshotId'
            consentCategoryName:
              $ref: '#/components/schemas/ConsentCategoryName'
            filteredPageCount:
              type: integer
    AuditRun_TagPrivacy_TagsSortColumn:
      type: string
      enum:
        - compliance_status
        - page_count
        - tag_name
        - consent_category_name
    AuditRun_TagPrivacy_PagesSortColumn:
      type: string
      enum:
        - page_url
        - final_page_url
        - page_load_time
        - page_status_code
        - final_page_status_code
        - tag_count
    AuditRun_TagPrivacy_TagPagesRequestDTO:
      type: object
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          required:
            - tagId
            - tagAccount
          properties:
            tagId:
              $ref: '#/components/schemas/TagId'
            tagAccount:
              $ref: '#/components/schemas/TagAccount'
    AuditRun_TagPrivacy_PagesDTO:
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_TagPrivacy_PageItem'
    AuditRun_TagPrivacy_PageItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
        - type: object
          required:
            - tagRequestCount
          properties:
            tagRequestCount:
              type: integer
              description: Number of tag requests on a page
    AuditRun_RequestPrivacy_RequestDTO:
      description: >-
        Request body with filters for Request Privacy report.
        `consentCategorySnapshotId` is deprecated, need to use
        `consentCategoryId` instead
      type: object
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            requestDomain:
              $ref: '#/components/schemas/RequestDomain'
            consentCategoryId:
              $ref: '#/components/schemas/ConsentCategoryId'
            consentCategorySnapshotId:
              $ref: '#/components/schemas/ConsentCategorySnapshotId'
            consentCategoryComplianceStatus:
              $ref: '#/components/schemas/ConsentCategoryComplianceStatus'
            countryCode:
              $ref: '#/components/schemas/CountryCode'
    AuditRun_RequestPrivacy_SummaryDTO:
      description: Request Privacy report summary
      type: object
      required:
        - totalPageCount
        - filteredPageCount
        - totalRequestCount
        - filteredRequestCount
        - filteredUniqueRequestDomainCount
        - filteredUniqueRequestGeoCount
        - totalApprovedRequestCount
        - totalUniqueApprovedRequestDomainCount
        - filteredApprovedRequestCount
        - filteredUniqueApprovedRequestDomainCount
        - totalUnapprovedRequestCount
        - totalUniqueUnapprovedRequestDomainCount
        - filteredUnapprovedRequestCount
        - filteredUniqueUnapprovedRequestDomainCount
        - filteredPageWithUnapprovedRequestCount
        - runHasNoConsentCategoriesAssigned
      properties:
        totalPageCount:
          type: integer
          description: Total number of pages audited
        filteredPageCount:
          type: integer
          description: Number of pages passing all applied filters
        totalRequestCount:
          type: integer
          description: Total number of network requests discovered
        filteredRequestCount:
          type: integer
          description: Number of network request passing all applied filters
        filteredUniqueRequestDomainCount:
          type: integer
          description: Number of unique network request domains passing all applied filters
        filteredUniqueRequestGeoCount:
          type: integer
          description: >-
            Number of unique network request geolocations passing all applied
            filters
        totalApprovedRequestCount:
          type: integer
          description: Total number of approved domain+geo pairs discovered
          deprecated: true
        totalUniqueApprovedRequestDomainCount:
          type: integer
          description: Total number of unique approved request domains discovered
        filteredApprovedRequestCount:
          type: integer
          description: Number of approved domain+geo pairs passing all applied filters
          deprecated: true
        filteredUniqueApprovedRequestDomainCount:
          type: integer
          description: >-
            Number of unique approved request domains passing all applied
            filters
        totalUnapprovedRequestCount:
          type: integer
          description: Total number of unapproved domain+geo pairs discovered
          deprecated: true
        totalUniqueUnapprovedRequestDomainCount:
          type: integer
          description: Total number of unique unapproved domains discovered
        filteredUnapprovedRequestCount:
          type: integer
          description: Number of unapproved domain+geo pairs passing all applied filters
          deprecated: true
        filteredUniqueUnapprovedRequestDomainCount:
          type: integer
          description: Number of unique unapproved domains passing all applied filters
        filteredPageWithUnapprovedRequestCount:
          type: integer
          description: >-
            Number of pages with unapproved domains or geos passing all applied
            filters
        runHasNoConsentCategoriesAssigned:
          $ref: '#/components/schemas/RunHasNoConsentCategoriesAssigned'
    AuditRun_RequestPrivacy_TrendsDTO:
      description: Request Privacy report trends
      required:
        - runs
      properties:
        runs:
          type: array
          maxItems: 5
          items:
            $ref: '#/components/schemas/AuditRun_RequestPrivacy_TrendItem'
    AuditRun_RequestPrivacy_TrendItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - totalRequestCount
            - totalUniqueRequestDomainCount
            - totalUniqueRequestGeoCount
            - totalApprovedRequestCount
            - totalUniqueApprovedRequestDomainCount
            - totalUnapprovedRequestCount
            - totalUniqueUnapprovedRequestDomainCount
          properties:
            totalRequestCount:
              type: integer
              description: Total number of network requests discovered
            totalUniqueRequestDomainCount:
              type: integer
              description: Total number of unique network request domains discovered
            totalUniqueRequestGeoCount:
              type: integer
              description: Total number of unique network request geolocations discovered
            totalApprovedRequestCount:
              type: integer
              description: Total number of approved domain+geo pairs discovered
              deprecated: true
            totalUniqueApprovedRequestDomainCount:
              type: integer
              description: Total number of unique approved request domains discovered
            totalUnapprovedRequestCount:
              type: integer
              description: Total number of unapproved domain+geo pairs discovered
              deprecated: true
            totalUniqueUnapprovedRequestDomainCount:
              type: integer
              description: Total number of unique unapproved domains discovered
    AuditRun_RequestPrivacy_TrendsEnum:
      type: string
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.TrendEnumCompatibleWithRunsGrid
      enum:
        - request_count
        - unique_domains
        - unique_geos
        - approved_requests
        - unique_approved_domains
        - unapproved_requests
        - unique_unapproved_domains
    AuditRun_RequestPrivacy_RequestLocationsDTO:
      type: object
      required:
        - locations
      properties:
        locations:
          description: >-
            Same `requestGeo.country` may be repeated in different array
            elements and may have different `status`es with different consent
            categories
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_RequestPrivacy_RequestLocationItem'
    AuditRun_RequestPrivacy_RequestLocationItem:
      type: object
      description: >-
        Consent category id & name are absent if location has not been matched
        by any consent category
      required:
        - requestGeo
        - requestCount
      properties:
        requestGeo:
          $ref: '#/components/schemas/AuditRun_RequestPrivacy_GeoLocation'
        requestCount:
          type: integer
        status:
          $ref: '#/components/schemas/ConsentCategoryComplianceStatus'
    AuditRun_RequestPrivacy_RequestsComplianceDTO:
      description: Request Compliance data
      type: object
      required:
        - metadata
        - requests
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        requests:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_RequestPrivacy_RequestItem'
    AuditRun_RequestPrivacy_RequestsSortColumn:
      type: string
      enum:
        - compliance_status
        - page_count
        - domain
        - geo
        - request_count
        - consent_category_name
    AuditRun_RequestPrivacy_RequestItem:
      type: object
      required:
        - requestDomain
        - requestCount
        - consentCategoryComplianceStatus
        - filteredPageCount
      properties:
        requestDomain:
          $ref: '#/components/schemas/RequestDomain'
        requestGeo:
          $ref: '#/components/schemas/AuditRun_RequestPrivacy_GeoLocation'
        requestCount:
          type: integer
        consentCategoryComplianceStatus:
          $ref: '#/components/schemas/ConsentCategoryComplianceStatus'
        consentCategorySnapshotId:
          $ref: '#/components/schemas/ConsentCategorySnapshotId'
        consentCategoryName:
          $ref: '#/components/schemas/ConsentCategoryName'
        filteredPageCount:
          type: integer
    AuditRun_RequestPrivacy_GeoLocation:
      type: object
      required:
        - countryCode
        - countryName
      properties:
        countryCode:
          $ref: '#/components/schemas/CountryCode'
        countryName:
          type: string
          example: United States
    AuditRun_RequestPrivacy_RequestPagesRequestDTO:
      type: object
      required:
        - requestDomain
      allOf:
        - $ref: '#/components/schemas/PageFiltersTrait'
        - type: object
          properties:
            requestDomain:
              $ref: '#/components/schemas/RequestDomain'
            countryCode:
              $ref: '#/components/schemas/CountryCode'
    AuditRun_RequestPrivacy_PagesDTO:
      type: object
      required:
        - metadata
        - pages
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_RequestPrivacy_PageItem'
    AuditRun_RequestPrivacy_PageItem:
      allOf:
        - $ref: '#/components/schemas/AuditRunPageCommonColumnsWithFinalValuesTrait'
        - type: object
          required:
            - geoCount
            - requestCount
          properties:
            geoCount:
              type: integer
              description: Number of distinct geo locations on a page
            requestCount:
              type: integer
              description: Number of network requests discovered on a page
    AuditRun_RequestPrivacy_PagesSortColumn:
      type: string
      enum:
        - page_url
        - final_page_url
        - page_load_time
        - page_status_code
        - final_page_status_code
        - geo_count
        - request_count
    TagVariablesExportTagItem:
      type: object
      required:
        - tagId
        - tagAccounts
      properties:
        tagId:
          $ref: '#/components/schemas/TagId'
        allTagAccounts:
          type: boolean
          description: Set to `true` if you want to export more than 100 accounts
        tagAccounts:
          type: array
          description: Contents ignored if `allTagAccounts` flag is set to `true`.
          maxItems: 100
          items:
            $ref: '#/components/schemas/TagAccount'
    ConsentCategory_ExportTypeEnum:
      type: string
      description: All supported consent category export types (non-related to runs)
      enum:
        - ACCOUNT_CONSENT_CATEGORY_CONFIGS_EXPORT
    ManualJourneyRun_ExportTypeEnum:
      type: string
      description: All supported manual journey run export types
      enum:
        - FULL
    ManualJourneyRun_ExportRequestDTO:
      type: object
      properties:
        includeActions:
          type: boolean
        includeRequestLog:
          type: boolean
        includeRuleResults:
          type: boolean
        includeTagSummary:
          type: boolean
        includeTagDetails:
          type: boolean
    AppJourneyRun_ExportTypeEnum:
      type: string
      description: All supported app journey run export types
      enum:
        - FULL
    WebJourneyRun_ExportTypeEnum:
      type: string
      description: All supported web journey run export types
      enum:
        - ACTION_SUMMARY
        - ACTION_TAGS
        - ACTION_TAG_VARIABLES
        - RULE_SUMMARY
        - ACTION_COOKIES
        - ACTION_NETWORK_REQUESTS
        - ACTION_BROWSER_LOGS
    WebJourneyRun_ExportTypeToFilterMapping:
      description: >-
        This mapping describes what export request filters are supported by
        different audit run export types
      discriminator:
        propertyName: export_type
        mapping:
          ACTION_TAG_VARIABLES: '#/components/schemas/WebJourneyRun_ActionTagVariables_RequestDTO'
    WebJourneyRun_ActionTagVariables_RequestDTO:
      type: object
      required:
        - tags
      properties:
        tags:
          type: array
          items:
            $ref: '#/components/schemas/TagVariablesExportTagItem'
    AlertExportTypeEnum:
      type: string
      description: All supported alert export types
      enum:
        - ACCOUNT_LEVEL_TRIGGERED_ALERTS_EXPORT
    AlertExportTypeToFilterMapping:
      description: >-
        This mapping describes what export request filters are supported by
        different alert export types
      discriminator:
        propertyName: export_type
        mapping:
          ACCOUNT_LEVEL_TRIGGERED_ALERTS_EXPORT: '#/components/schemas/AccountTriggeredAlertsRequestDTO'
    AlertExportTypeToSortColumnMapping:
      description: >-
        This mapping describes what `sortBy` column enums are supported by
        different alert export types
      discriminator:
        propertyName: export_type
        mapping:
          ACCOUNT_LEVEL_TRIGGERED_ALERTS_EXPORT: '#/components/schemas/GetAccountTriggeredAlertsSortColumn'
    AccountUsageExportTypeEnum:
      type: string
      description: All supported usage export types
      enum:
        - AUDIT_RUNS_EXPORT
        - WEB_JOURNEY_RUNS_EXPORT
    AccountUsageExportTypeToFilterMapping:
      description: >-
        This mapping describes what export request filters are supported by
        different usage export types
      discriminator:
        propertyName: export_type
        mapping:
          AUDIT_RUNS_EXPORT: '#/components/schemas/AccountUsageV2_ExportRequestDTO'
          WEB_JOURNEY_RUNS_EXPORT: '#/components/schemas/AccountUsageV2_ExportRequestDTO'
    AuditRun_ExportTypeEnum:
      type: string
      description: All supported audit run export types
      enum:
        - AUDIT_SUMMARY_DETECTED_TAGS
        - RULE_SUMMARY_PAGE_RESULTS
        - RULE_SUMMARY_PAGE_RULE_RESULTS
        - PAGE_SUMMARY_PAGES
        - PAGE_SUMMARY_BROKEN_SCANNED_LINKS
        - TAG_INVENTORY_PAGES
        - TAG_HEALTH_PAGES
        - TAG_DUPLICATES_AND_MULTIPLES_PAGES
        - VARIABLE_INVENTORY_TAG_ACCOUNT_PAGES
        - VARIABLE_INVENTORY_TAG_ACCOUNT_VARIABLE_PAGES
        - VARIABLE_INVENTORY_TAG_ACCOUNT_VARIABLE_NOT_SET_PAGES
        - VARIABLE_INVENTORY_TAG_ACCOUNT_VARIABLE_VALUE_PAGES
        - COOKIE_INVENTORY_PAGES
        - COOKIE_INVENTORY_COOKIE_PAGES
        - COOKIE_INVENTORY_COOKIES_AGGREGATED
        - BROWSER_LOGS_PAGES
        - TAG_PRIVACY_COMPLIANCE
        - TAG_PRIVACY_PAGES
        - TAG_PRIVACY_TAG_PAGES
        - COOKIE_PRIVACY_COMPLIANCE
        - COOKIE_PRIVACY_PAGES
        - COOKIE_PRIVACY_COOKIE_PAGES
        - REQUEST_PRIVACY_COMPLIANCE
        - REQUEST_PRIVACY_PAGES
        - REQUEST_PRIVACY_REQUEST_PAGES
        - FILE_CHANGES_PAGES
        - FILE_CHANGES_FILE_PAGES
        - TAG_METADATA
        - TAG_INVENTORY_PAGE_TAGS
        - COOKIE_INVENTORY_COOKIES
        - BROWSER_LOGS_PAGE_LOGS
        - NETWORK_REQUEST_LOG_PAGE_REQUESTS
        - RULE_SUMMARY_RULES
        - VARIABLE_INVENTORY_TAG_VARIABLES
        - ALERT_SUMMARY_ALERTS
    AuditRun_ExportTypeToFilterMapping:
      description: >-
        This mapping describes what export request filters are supported by
        different audit run export types
      discriminator:
        propertyName: export_type
        mapping:
          AUDIT_SUMMARY_DETECTED_TAGS: '#/components/schemas/AuditRun_AuditSummary_RequestDTO'
          RULE_SUMMARY_PAGE_RESULTS: '#/components/schemas/AuditRun_RuleSummary_AllRuleResultsRequestDTO'
          RULE_SUMMARY_PAGE_RULE_RESULTS: >-
            #/components/schemas/AuditRun_RuleSummary_SpecificRulePagesExportRequestDTO
          PAGE_SUMMARY_PAGES: '#/components/schemas/PageSummaryRequestDTO'
          TAG_INVENTORY_PAGES: '#/components/schemas/AuditRun_TagInventory_RequestDTO'
          TAG_INVENTORY_PAGE_TAGS: '#/components/schemas/AuditRun_TagInventory_PageTagsRequestDTO'
          TAG_HEALTH_PAGES: '#/components/schemas/AuditRun_TagHealth_RequestDTO'
          TAG_DUPLICATES_AND_MULTIPLES_PAGES: >-
            #/components/schemas/AuditRun_TagDuplicatesAndMultiples_PagesRequestDTO
          VARIABLE_INVENTORY_TAG_ACCOUNT_PAGES: '#/components/schemas/AuditRun_VariableInventory_TagAccountRequestDTO'
          VARIABLE_INVENTORY_TAG_ACCOUNT_VARIABLE_PAGES: >-
            #/components/schemas/AuditRun_VariableInventory_TagAccountVariableRequestDTO
          VARIABLE_INVENTORY_TAG_ACCOUNT_VARIABLE_NOT_SET_PAGES: >-
            #/components/schemas/AuditRun_VariableInventory_TagAccountVariableRequestDTO
          VARIABLE_INVENTORY_TAG_ACCOUNT_VARIABLE_VALUE_PAGES: >-
            #/components/schemas/AuditRun_VariableInventory_TagAccountVariableRequestDTO
          COOKIE_INVENTORY_PAGES: '#/components/schemas/AuditRun_CookieInventory_RequestDTO'
          COOKIE_INVENTORY_COOKIE_PAGES: '#/components/schemas/AuditRun_CookieInventory_CookiePagesRequestDTO'
          COOKIE_INVENTORY_COOKIES_AGGREGATED: '#/components/schemas/AuditRun_CookieInventory_RequestDTO'
          BROWSER_LOGS_PAGES: '#/components/schemas/AuditRun_BrowserLogs_PagesRequestDTO'
          TAG_PRIVACY_COMPLIANCE: '#/components/schemas/AuditRun_TagPrivacy_RequestDTO'
          TAG_PRIVACY_PAGES: '#/components/schemas/AuditRun_TagPrivacy_RequestDTO'
          TAG_PRIVACY_TAG_PAGES: '#/components/schemas/AuditRun_TagPrivacy_TagPagesRequestDTO'
          COOKIE_PRIVACY_COMPLIANCE: '#/components/schemas/AuditRun_CookiePrivacy_RequestDTO'
          COOKIE_PRIVACY_PAGES: '#/components/schemas/AuditRun_CookiePrivacy_RequestDTO'
          COOKIE_PRIVACY_COOKIE_PAGES: '#/components/schemas/AuditRun_CookiePrivacy_CookiePagesRequestDTO'
          REQUEST_PRIVACY_COMPLIANCE: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
          REQUEST_PRIVACY_PAGES: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
          REQUEST_PRIVACY_REQUEST_PAGES: '#/components/schemas/AuditRun_RequestPrivacy_RequestPagesRequestDTO'
          FILE_CHANGES_PAGES: '#/components/schemas/AuditRun_FileChanges_RequestDTO'
          FILE_CHANGES_FILE_PAGES: '#/components/schemas/AuditRun_FileChanges_FilePagesRequestDTO'
          VARIABLE_INVENTORY_TAG_VARIABLES: >-
            #/components/schemas/AuditRun_VariableInventory_TagVariablesExportRequestDTO
          ALERT_SUMMARY_ALERTS: '#/components/schemas/AuditRun_AlertSummary_SummaryRequestDTO'
    AuditRun_ExportTypeToSortColumnMapping:
      description: >-
        This mapping describes what `sortBy` column enums are supported by
        different audit run export types
      discriminator:
        propertyName: export_type
        mapping:
          RULE_SUMMARY_PAGE_RESULTS: '#/components/schemas/AuditRun_RuleSummary_AllRules_PagesSortColumn'
          RULE_SUMMARY_PAGE_RULE_RESULTS: >-
            #/components/schemas/AuditRun_RuleSummary_SpecificRule_PagesSortColumn
          PAGE_SUMMARY_PAGES: '#/components/schemas/AuditRun_PageSummary_PagesSortColumn'
          TAG_INVENTORY_PAGES: '#/components/schemas/AuditRun_TagInventory_PagesSortColumn'
          TAG_HEALTH_PAGES: '#/components/schemas/AuditRun_TagHealth_PageSortColumn'
          TAG_DUPLICATES_AND_MULTIPLES_PAGES: >-
            #/components/schemas/AuditRun_TagDuplicatesAndMultiples_PagesSortColumn
          VARIABLE_INVENTORY_TAG_ACCOUNT_PAGES: '#/components/schemas/AuditRun_VariableInventory_PagesSortColumn'
          VARIABLE_INVENTORY_TAG_ACCOUNT_VARIABLE_PAGES: '#/components/schemas/AuditRun_VariableInventory_PagesSortColumn'
          VARIABLE_INVENTORY_TAG_ACCOUNT_VARIABLE_NOT_SET_PAGES: '#/components/schemas/AuditRun_VariableInventory_PagesSortColumn'
          VARIABLE_INVENTORY_TAG_ACCOUNT_VARIABLE_VALUE_PAGES: '#/components/schemas/AuditRun_VariableInventory_PagesSortColumn'
          COOKIE_INVENTORY_PAGES: '#/components/schemas/AuditRun_CookieInventory_PageSortColumn'
          COOKIE_INVENTORY_COOKIE_PAGES: '#/components/schemas/AuditRun_CookieInventory_PageSortColumn'
          COOKIE_INVENTORY_COOKIES_AGGREGATED: '#/components/schemas/AuditRun_CookieInventory_CookiesSortColumn'
          BROWSER_LOGS_PAGES: '#/components/schemas/AuditRun_BrowserLogs_PagesSortColumn'
          TAG_PRIVACY_COMPLIANCE: '#/components/schemas/AuditRun_TagPrivacy_TagsSortColumn'
          TAG_PRIVACY_PAGES: '#/components/schemas/AuditRun_TagPrivacy_PagesSortColumn'
          TAG_PRIVACY_TAG_PAGES: '#/components/schemas/AuditRun_TagPrivacy_PagesSortColumn'
          COOKIE_PRIVACY_COMPLIANCE: '#/components/schemas/AuditRun_CookiePrivacy_CookiesSortColumn'
          COOKIE_PRIVACY_PAGES: '#/components/schemas/AuditRun_CookiePrivacy_PagesSortColumn'
          COOKIE_PRIVACY_COOKIE_PAGES: '#/components/schemas/AuditRun_CookiePrivacy_PagesSortColumn'
          REQUEST_PRIVACY_COMPLIANCE: '#/components/schemas/AuditRun_RequestPrivacy_RequestsSortColumn'
          REQUEST_PRIVACY_PAGES: '#/components/schemas/AuditRun_RequestPrivacy_PagesSortColumn'
          REQUEST_PRIVACY_REQUEST_PAGES: '#/components/schemas/AuditRun_RequestPrivacy_PagesSortColumn'
          FILE_CHANGES_PAGES: '#/components/schemas/AuditRun_FileChanges_PagesSortColumn'
          FILE_CHANGES_FILE_PAGES: '#/components/schemas/AuditRun_FileChanges_PagesSortColumn'
          ALERT_SUMMARY_ALERTS: '#/components/schemas/AuditRun_AuditSummary_AlertsSortColumn'
    AuditRun_VariableInventory_TagVariablesExportRequestDTO:
      type: object
      required:
        - tags
      properties:
        tags:
          type: array
          items:
            $ref: '#/components/schemas/TagVariablesExportTagItem'
    AuditRun_TagInventory_PageTagsRequestDTO:
      type: object
      required:
        - tags
      properties:
        tags:
          type: array
          items:
            $ref: >-
              #/components/schemas/AuditRun_TagInventory_PageTagsExportTagAccountItem
    AuditRun_TagInventory_PageTagsExportTagAccountItem:
      type: object
      required:
        - tagId
        - account
      properties:
        tagId:
          $ref: '#/components/schemas/TagId'
        account:
          $ref: '#/components/schemas/TagAccount'
    ExportResultDTO:
      type: object
      required:
        - exportId
      properties:
        exportId:
          $ref: '#/components/schemas/ExportId'
    ExportTypeEnum:
      type: string
      description: Enumeration of all high-level export types
      enum:
        - AUDIT_RUN_EXPORT
        - WEB_JOURNEY_RUN_EXPORT
        - APP_JOURNEY_RUN_EXPORT
        - MANUAL_JOURNEY_RUN_EXPORT
        - CONSENT_CATEGORY_EXPORT
        - ALERT_EXPORT
        - ACCOUNT_USAGE_EXPORT
        - GRID_DATA_EXPORT
    AlertName:
      type: string
      minLength: 1
      description: User-defined name of the alert
    AdHocAlertsRequestDTO:
      type: object
      required:
        - alerts
      properties:
        alerts:
          type: array
          items:
            $ref: '#/components/schemas/AdHocAlertRequestItem'
    AdHocAlertRequestItem:
      type: object
      description: >
        Alert is triggered when comparison holds: `actual value`
        &lt;targetValueComparisonOperator&gt; `targetValue`
      required:
        - name
        - metricType
        - targetValueComparator
        - filtersV0
      properties:
        name:
          $ref: '#/components/schemas/AlertName'
        metricType:
          $ref: '#/components/schemas/AlertMetricTypeEnum'
        metricChangeType:
          $ref: '#/components/schemas/AlertMetricChangeTypeEnum'
        targetValueComparator:
          $ref: '#/components/schemas/AlertMetricValueComparator'
        filtersV0:
          type: object
          description: >
            Filters to be applied before computing the alert. Exact type depends
            on `metricType`, see mapping in `AlertMetricTypeToFilterMapping`
    AlertMetricTypeEnum:
      type: string
      description: |
        Deprecated metric types:
          - ACCOUNT_USAGE_THIS_MONTH_AUDIT_PAGE_SCANNED_COUNT
          - ACCOUNT_USAGE_12_MONTH_AUDIT_PAGE_SCANNED_COUNT
          - ACCOUNT_USAGE_12_MONTH_WJ_RUN_COUNT
          - ACCOUNT_USAGE_THIS_MONTH_WJ_RUN_COUNT
          - ACCOUNT_USAGE_LAST_30_DAYS_LOGIN_USER_COUNT
          - PAGE_SUMMARY_FAILED_RULE_COUNT
      enum:
        - ACCOUNT_USAGE_THIS_MONTH_AUDIT_PAGE_SCANNED_COUNT
        - ACCOUNT_USAGE_12_MONTH_AUDIT_PAGE_SCANNED_COUNT
        - ACCOUNT_USAGE_12_MONTH_WJ_RUN_COUNT
        - ACCOUNT_USAGE_THIS_MONTH_WJ_RUN_COUNT
        - ACCOUNT_USAGE_LAST_30_DAYS_LOGIN_USER_COUNT
        - ACCOUNT_USAGE_V2_THIS_MONTH_AUDIT_PAGE_USAGE_PERCENTAGE
        - ACCOUNT_USAGE_V2_CURRENT_TERM_PAGE_USAGE_PERCENTAGE
        - ACCOUNT_USAGE_V2_CURRENT_TERM_WJ_RUN_USAGE_PERCENTAGE
        - ACCOUNT_USAGE_V2_THIS_MONTH_WJ_RUN_USAGE_PERCENTAGE
        - ACCOUNT_USAGE_V2_LAST_30_DAYS_LOGIN_USER_COUNT
        - SCORE_TOTAL
        - SCORE_TAG_PRESENCE
        - SCORE_TAG_PERFORMANCE
        - SCORE_RULES
        - SCORE_PAGE_PERFORMANCE
        - SCORE_COOKIE
        - PAGE_SUMMARY_PAGE_COUNT
        - PAGE_SUMMARY_AVG_PAGE_LOAD_TIME
        - PAGE_SUMMARY_BROKEN_INITIAL_PAGE_COUNT
        - PAGE_SUMMARY_BROKEN_FINAL_PAGE_COUNT
        - PAGE_SUMMARY_PAGE_WITH_BROKEN_LINKS_COUNT
        - PAGE_SUMMARY_FAILED_RULE_COUNT
        - PAGE_SUMMARY_WEB_VITALS_P75_LARGEST_CONTENTFUL_PAINT
        - PAGE_SUMMARY_WEB_VITALS_P75_FIRST_CONTENTFUL_PAINT
        - PAGE_SUMMARY_WEB_VITALS_P75_TIME_TO_FIRST_BYTE
        - PAGE_SUMMARY_WEB_VITALS_P75_CUMULATIVE_LAYOUT_SHIFT
        - TAG_INVENTORY_PAGE_COUNT
        - TAG_INVENTORY_UNIQUE_TAG_COUNT
        - TAG_INVENTORY_BROKEN_TAG_COUNT
        - TAG_INVENTORY_BROKEN_PAGE_COUNT
        - TAG_HEALTH_PAGE_COUNT
        - TAG_HEALTH_AVG_TAG_LOAD_TIME
        - TAG_HEALTH_AVG_TAG_REQUEST_SIZE
        - TAG_HEALTH_SLOW_TAG_PERCENTAGE
        - TAG_HEALTH_BROKEN_TAG_PERCENTAGE
        - TAG_HEALTH_TAG_REQUEST_COUNT
        - TAG_DUPLICATES_AND_MULTIPLES_PAGE_COUNT
        - TAG_DUPLICATES_AND_MULTIPLES_UNIQUE_TAG_COUNT
        - TAG_DUPLICATES_AND_MULTIPLES_TAG_REQUEST_COUNT
        - TAG_DUPLICATES_AND_MULTIPLES_TAG_DUPLICATE_COUNT
        - TAG_DUPLICATES_AND_MULTIPLES_TAG_MULTIPLE_COUNT
        - VARIABLE_INVENTORY_PAGE_COUNT
        - VARIABLE_INVENTORY_UNIQUE_TAG_COUNT
        - VARIABLE_INVENTORY_TAG_REQUEST_COUNT
        - VARIABLE_INVENTORY_UNIQUE_VARIABLE_COUNT
        - VARIABLE_INVENTORY_UNIQUE_VARIABLE_VALUE_COUNT
        - BROWSER_LOGS_PAGE_COUNT
        - BROWSER_LOGS_ERROR_LOG_COUNT
        - BROWSER_LOGS_WARN_LOG_COUNT
        - BROWSER_LOGS_INFO_LOG_COUNT
        - BROWSER_LOGS_DEBUG_LOG_COUNT
        - BROWSER_LOGS_OTHER_LOG_COUNT
        - COOKIE_INVENTORY_PAGE_COUNT
        - COOKIE_INVENTORY_UNIQUE_COOKIE_COUNT
        - COOKIE_INVENTORY_FIRST_PARTY_COOKIE_COUNT
        - COOKIE_INVENTORY_THIRD_PARTY_COOKIE_COUNT
        - COOKIE_INVENTORY_NON_SECURE_COOKIE_COUNT
        - COOKIE_INVENTORY_SAME_SITE_EMPTY_COOKIE_COUNT
        - PRIVACY_COOKIES_PAGE_COUNT
        - PRIVACY_COOKIES_PAGE_WITH_UNAPPROVED_COOKIES_COUNT
        - PRIVACY_COOKIES_UNIQUE_COOKIE_COUNT
        - PRIVACY_COOKIES_APPROVED_COOKIE_COUNT
        - PRIVACY_COOKIES_UNAPPROVED_COOKIE_COUNT
        - PRIVACY_TAGS_PAGE_COUNT
        - PRIVACY_TAGS_PAGE_WITH_UNAPPROVED_TAGS_COUNT
        - PRIVACY_TAGS_UNIQUE_TAG_COUNT
        - PRIVACY_TAGS_APPROVED_TAG_COUNT
        - PRIVACY_TAGS_UNAPPROVED_TAG_COUNT
        - PRIVACY_REQUESTS_PAGE_COUNT
        - PRIVACY_REQUESTS_PAGE_WITH_UNAPPROVED_REQUESTS_COUNT
        - PRIVACY_REQUESTS_REQUEST_COUNT
        - PRIVACY_REQUESTS_UNIQUE_DOMAIN_COUNT
        - PRIVACY_REQUESTS_UNIQUE_LOCATION_COUNT
        - PRIVACY_REQUESTS_APPROVED_REQUEST_COUNT
        - PRIVACY_REQUESTS_UNAPPROVED_REQUEST_COUNT
        - FILE_CHANGES_PAGE_COUNT
        - FILE_CHANGES_CHANGED_FILE_COUNT
        - FILE_CHANGES_NEW_FILE_COUNT
        - FILE_CHANGES_FILE_DATE_CHANGE_COUNT
        - FILE_CHANGES_FILE_SIZE_CHANGE_COUNT
        - RULE_RESULTS_PAGE_COUNT
        - RULE_RESULTS_RULE_COUNT
        - RULE_RESULTS_RULE_FAILURE_COUNT
        - RULE_RESULTS_FAILED_RULE_COUNT
        - RULE_RESULTS_PASSED_RULE_COUNT
        - RULE_RESULTS_NOT_APPLIED_RULE_COUNT
        - RULE_RESULTS_FAILED_RULE_PAGE_COUNT
        - RULE_RESULTS_PASSED_RULE_PAGE_COUNT
        - RULE_RESULTS_NOT_APPLIED_RULE_PAGE_COUNT
    AlertMetricTypeToFilterMapping:
      description: >-
        This mapping describes what alert filters are supported by different
        alert metric types - `AlertMetricTypeEnum`
      discriminator:
        propertyName: metricType
        mapping:
          ACCOUNT_USAGE_THIS_MONTH_AUDIT_PAGE_SCANNED_COUNT: '#/components/schemas/AccountUsage_RequestDTO'
          ACCOUNT_USAGE_12_MONTH_AUDIT_PAGE_SCANNED_COUNT: '#/components/schemas/AccountUsage_RequestDTO'
          ACCOUNT_USAGE_12_MONTH_WJ_RUN_COUNT: '#/components/schemas/AccountUsage_RequestDTO'
          ACCOUNT_USAGE_THIS_MONTH_WJ_RUN_COUNT: '#/components/schemas/AccountUsage_RequestDTO'
          ACCOUNT_USAGE_LAST_30_DAYS_LOGIN_USER_COUNT: '#/components/schemas/AccountUsage_RequestDTO'
          ACCOUNT_USAGE_V2_THIS_MONTH_AUDIT_PAGE_USAGE_PERCENTAGE: '#/components/schemas/AccountUsageV2_RequestDTO'
          ACCOUNT_USAGE_V2_CURRENT_TERM_PAGE_USAGE_PERCENTAGE: '#/components/schemas/AccountUsageV2_RequestDTO'
          ACCOUNT_USAGE_V2_CURRENT_TERM_WJ_RUN_USAGE_PERCENTAGE: '#/components/schemas/AccountUsageV2_RequestDTO'
          ACCOUNT_USAGE_V2_THIS_MONTH_WJ_RUN_USAGE_PERCENTAGE: '#/components/schemas/AccountUsageV2_RequestDTO'
          ACCOUNT_USAGE_V2_LAST_30_DAYS_LOGIN_USER_COUNT: '#/components/schemas/AccountUsageV2_RequestDTO'
          SCORE_TOTAL: '#/components/schemas/AuditRun_AuditSummary_RequestDTO'
          SCORE_TAG_PRESENCE: '#/components/schemas/AuditRun_AuditSummary_RequestDTO'
          SCORE_TAG_PERFORMANCE: '#/components/schemas/AuditRun_AuditSummary_RequestDTO'
          SCORE_RULES: '#/components/schemas/AuditRun_AuditSummary_RequestDTO'
          SCORE_PAGE_PERFORMANCE: '#/components/schemas/AuditRun_AuditSummary_RequestDTO'
          SCORE_COOKIE: '#/components/schemas/AuditRun_AuditSummary_RequestDTO'
          PAGE_SUMMARY_PAGE_COUNT: '#/components/schemas/PageSummaryRequestDTO'
          PAGE_SUMMARY_AVG_PAGE_LOAD_TIME: '#/components/schemas/PageSummaryRequestDTO'
          PAGE_SUMMARY_BROKEN_INITIAL_PAGE_COUNT: '#/components/schemas/PageSummaryRequestDTO'
          PAGE_SUMMARY_BROKEN_FINAL_PAGE_COUNT: '#/components/schemas/PageSummaryRequestDTO'
          PAGE_SUMMARY_PAGE_WITH_BROKEN_LINKS_COUNT: '#/components/schemas/PageSummaryRequestDTO'
          PAGE_SUMMARY_FAILED_RULE_COUNT: '#/components/schemas/PageSummaryRequestDTO'
          PAGE_SUMMARY_WEB_VITALS_P75_LARGEST_CONTENTFUL_PAINT: '#/components/schemas/PageSummaryRequestDTO'
          PAGE_SUMMARY_WEB_VITALS_P75_FIRST_CONTENTFUL_PAINT: '#/components/schemas/PageSummaryRequestDTO'
          PAGE_SUMMARY_WEB_VITALS_P75_TIME_TO_FIRST_BYTE: '#/components/schemas/PageSummaryRequestDTO'
          PAGE_SUMMARY_WEB_VITALS_P75_CUMULATIVE_LAYOUT_SHIFT: '#/components/schemas/PageSummaryRequestDTO'
          TAG_INVENTORY_PAGE_COUNT: '#/components/schemas/AuditRun_TagInventory_RequestDTO'
          TAG_INVENTORY_UNIQUE_TAG_COUNT: '#/components/schemas/AuditRun_TagInventory_RequestDTO'
          TAG_INVENTORY_BROKEN_TAG_COUNT: '#/components/schemas/AuditRun_TagInventory_RequestDTO'
          TAG_INVENTORY_BROKEN_PAGE_COUNT: '#/components/schemas/AuditRun_TagInventory_RequestDTO'
          TAG_HEALTH_PAGE_COUNT: '#/components/schemas/AuditRun_TagHealth_RequestDTO'
          TAG_HEALTH_AVG_TAG_LOAD_TIME: '#/components/schemas/AuditRun_TagHealth_RequestDTO'
          TAG_HEALTH_AVG_TAG_REQUEST_SIZE: '#/components/schemas/AuditRun_TagHealth_RequestDTO'
          TAG_HEALTH_SLOW_TAG_PERCENTAGE: '#/components/schemas/AuditRun_TagHealth_RequestDTO'
          TAG_HEALTH_BROKEN_TAG_PERCENTAGE: '#/components/schemas/AuditRun_TagHealth_RequestDTO'
          TAG_HEALTH_TAG_REQUEST_COUNT: '#/components/schemas/AuditRun_TagHealth_RequestDTO'
          TAG_DUPLICATES_AND_MULTIPLES_PAGE_COUNT: '#/components/schemas/AuditRun_TagDuplicatesAndMultiples_RequestDTO'
          TAG_DUPLICATES_AND_MULTIPLES_UNIQUE_TAG_COUNT: '#/components/schemas/AuditRun_TagDuplicatesAndMultiples_RequestDTO'
          TAG_DUPLICATES_AND_MULTIPLES_TAG_REQUEST_COUNT: '#/components/schemas/AuditRun_TagDuplicatesAndMultiples_RequestDTO'
          TAG_DUPLICATES_AND_MULTIPLES_TAG_DUPLICATE_COUNT: '#/components/schemas/AuditRun_TagDuplicatesAndMultiples_RequestDTO'
          TAG_DUPLICATES_AND_MULTIPLES_TAG_MULTIPLE_COUNT: '#/components/schemas/AuditRun_TagDuplicatesAndMultiples_RequestDTO'
          VARIABLE_INVENTORY_PAGE_COUNT: '#/components/schemas/AuditRun_VariableInventory_RequestDTO'
          VARIABLE_INVENTORY_UNIQUE_TAG_COUNT: '#/components/schemas/AuditRun_VariableInventory_RequestDTO'
          VARIABLE_INVENTORY_TAG_REQUEST_COUNT: '#/components/schemas/AuditRun_VariableInventory_RequestDTO'
          VARIABLE_INVENTORY_UNIQUE_VARIABLE_COUNT: '#/components/schemas/AuditRun_VariableInventory_RequestDTO'
          VARIABLE_INVENTORY_UNIQUE_VARIABLE_VALUE_COUNT: '#/components/schemas/AuditRun_VariableInventory_RequestDTO'
          BROWSER_LOGS_PAGE_COUNT: '#/components/schemas/AuditRun_BrowserLogs_RequestDTO'
          BROWSER_LOGS_ERROR_LOG_COUNT: '#/components/schemas/AuditRun_BrowserLogs_RequestDTO'
          BROWSER_LOGS_WARN_LOG_COUNT: '#/components/schemas/AuditRun_BrowserLogs_RequestDTO'
          BROWSER_LOGS_INFO_LOG_COUNT: '#/components/schemas/AuditRun_BrowserLogs_RequestDTO'
          BROWSER_LOGS_DEBUG_LOG_COUNT: '#/components/schemas/AuditRun_BrowserLogs_RequestDTO'
          BROWSER_LOGS_OTHER_LOG_COUNT: '#/components/schemas/AuditRun_BrowserLogs_RequestDTO'
          COOKIE_INVENTORY_PAGE_COUNT: '#/components/schemas/AuditRun_CookieInventory_RequestDTO'
          COOKIE_INVENTORY_UNIQUE_COOKIE_COUNT: '#/components/schemas/AuditRun_CookieInventory_RequestDTO'
          COOKIE_INVENTORY_FIRST_PARTY_COOKIE_COUNT: '#/components/schemas/AuditRun_CookieInventory_RequestDTO'
          COOKIE_INVENTORY_THIRD_PARTY_COOKIE_COUNT: '#/components/schemas/AuditRun_CookieInventory_RequestDTO'
          COOKIE_INVENTORY_NON_SECURE_COOKIE_COUNT: '#/components/schemas/AuditRun_CookieInventory_RequestDTO'
          COOKIE_INVENTORY_SAME_SITE_EMPTY_COOKIE_COUNT: '#/components/schemas/AuditRun_CookieInventory_RequestDTO'
          PRIVACY_COOKIES_PAGE_COUNT: '#/components/schemas/AuditRun_CookiePrivacy_RequestDTO'
          PRIVACY_COOKIES_PAGE_WITH_UNAPPROVED_COOKIES_COUNT: '#/components/schemas/AuditRun_CookiePrivacy_RequestDTO'
          PRIVACY_COOKIES_UNIQUE_COOKIE_COUNT: '#/components/schemas/AuditRun_CookiePrivacy_RequestDTO'
          PRIVACY_COOKIES_APPROVED_COOKIE_COUNT: '#/components/schemas/AuditRun_CookiePrivacy_RequestDTO'
          PRIVACY_COOKIES_UNAPPROVED_COOKIE_COUNT: '#/components/schemas/AuditRun_CookiePrivacy_RequestDTO'
          PRIVACY_TAGS_PAGE_COUNT: '#/components/schemas/AuditRun_TagPrivacy_RequestDTO'
          PRIVACY_TAGS_PAGE_WITH_UNAPPROVED_TAGS_COUNT: '#/components/schemas/AuditRun_TagPrivacy_RequestDTO'
          PRIVACY_TAGS_UNIQUE_TAG_COUNT: '#/components/schemas/AuditRun_TagPrivacy_RequestDTO'
          PRIVACY_TAGS_APPROVED_TAG_COUNT: '#/components/schemas/AuditRun_TagPrivacy_RequestDTO'
          PRIVACY_TAGS_UNAPPROVED_TAG_COUNT: '#/components/schemas/AuditRun_TagPrivacy_RequestDTO'
          PRIVACY_REQUESTS_PAGE_COUNT: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
          PRIVACY_REQUESTS_PAGE_WITH_UNAPPROVED_REQUESTS_COUNT: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
          PRIVACY_REQUESTS_REQUEST_COUNT: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
          PRIVACY_REQUESTS_UNIQUE_DOMAIN_COUNT: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
          PRIVACY_REQUESTS_UNIQUE_LOCATION_COUNT: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
          PRIVACY_REQUESTS_APPROVED_REQUEST_COUNT: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
          PRIVACY_REQUESTS_UNAPPROVED_REQUEST_COUNT: '#/components/schemas/AuditRun_RequestPrivacy_RequestDTO'
          FILE_CHANGES_PAGE_COUNT: '#/components/schemas/AuditRun_FileChanges_RequestDTO'
          FILE_CHANGES_CHANGED_FILE_COUNT: '#/components/schemas/AuditRun_FileChanges_RequestDTO'
          FILE_CHANGES_NEW_FILE_COUNT: '#/components/schemas/AuditRun_FileChanges_RequestDTO'
          FILE_CHANGES_FILE_DATE_CHANGE_COUNT: '#/components/schemas/AuditRun_FileChanges_RequestDTO'
          FILE_CHANGES_FILE_SIZE_CHANGE_COUNT: '#/components/schemas/AuditRun_FileChanges_RequestDTO'
          RULE_RESULTS_PAGE_COUNT: '#/components/schemas/AuditRun_RuleSummary_RequestDTO'
          RULE_RESULTS_RULE_COUNT: '#/components/schemas/AuditRun_RuleSummary_RequestDTO'
          RULE_RESULTS_RULE_FAILURE_COUNT: '#/components/schemas/AuditRun_RuleSummary_RequestDTO'
          RULE_RESULTS_FAILED_RULE_COUNT: '#/components/schemas/AuditRun_RuleSummary_RequestDTO'
          RULE_RESULTS_PASSED_RULE_COUNT: '#/components/schemas/AuditRun_RuleSummary_RequestDTO'
          RULE_RESULTS_NOT_APPLIED_RULE_COUNT: '#/components/schemas/AuditRun_RuleSummary_RequestDTO'
          RULE_RESULTS_FAILED_RULE_PAGE_COUNT: '#/components/schemas/AuditRun_RuleSummary_RequestDTO'
          RULE_RESULTS_PASSED_RULE_PAGE_COUNT: '#/components/schemas/AuditRun_RuleSummary_RequestDTO'
          RULE_RESULTS_NOT_APPLIED_RULE_PAGE_COUNT: '#/components/schemas/AuditRun_RuleSummary_RequestDTO'
    AlertMetricChangeTypeEnum:
      type: string
      description: >
        Behaviour per type:

        - VALUE_CHANGE: current - previous

        - VALUE_CHANGE_ABS: ABS(current - previous)

        - RELATIVE_VALUE_CHANGE: 100% * (current - previous) / previous

        - RELATIVE_VALUE_CHANGE: ABS(100% * (current - previous) / previous)


        Composite metric change operators shown on ObservePoint UI should be
        defined as described below:

        - `Changes by (∆)` = VALUE_CHANGE_ABS + GREATER_OR_EQUAL(positive
        number)

        - `Increases by (+)` = VALUE_CHANGE + GREATER_OR_EQUAL(positive number)

        - `Decreases by (-)` = VALUE_CHANGE + LESS_OR_EQUAL(negative number)

        - `Any change` = VALUE_CHANGE_ABS (or VALUE_CHANGE) + NOT_EQUAL(0)

        - `Changes by (∆ %)` = RELATIVE_CHANGE_ABS + GREATER_OR_EQUAL(positive
        number)

        - `Increases by (+%)` = RELATIVE_CHANGE + GREATER_OR_EQUAL(positive
        number)

        - `Decreases by (-%)` = RELATIVE_CHANGE + LESS_OR_EQUAL(negative number)
      enum:
        - VALUE_CHANGE
        - VALUE_CHANGE_ABS
        - RELATIVE_VALUE_CHANGE
        - RELATIVE_VALUE_CHANGE_ABS
    AlertMetricValueComparator:
      type: object
      description: >
        Subtypes: - AlertMetricSpecificValueComparator -
        AlertMetricValueInRangeComparator - AlertMetricValueNotInRangeComparator
      required:
        - operator
      properties:
        operator:
          $ref: '#/components/schemas/AlertMetricValueComparisonOperatorEnum'
      discriminator:
        propertyName: operator
        mapping:
          GREATER: '#/components/schemas/AlertMetricSpecificValueComparator'
          GREATER_OR_EQUAL: '#/components/schemas/AlertMetricSpecificValueComparator'
          EQUAL: '#/components/schemas/AlertMetricSpecificValueComparator'
          NOT_EQUAL: '#/components/schemas/AlertMetricSpecificValueComparator'
          LESS_OR_EQUAL: '#/components/schemas/AlertMetricSpecificValueComparator'
          LESS: '#/components/schemas/AlertMetricSpecificValueComparator'
          BETWEEN: '#/components/schemas/AlertMetricValueInRangeComparator'
          NOT_BETWEEN: '#/components/schemas/AlertMetricValueNotInRangeComparator'
    AlertMetricValueComparisonOperatorEnum:
      type: string
      enum:
        - GREATER
        - GREATER_OR_EQUAL
        - EQUAL
        - NOT_EQUAL
        - LESS_OR_EQUAL
        - LESS
        - BETWEEN
        - NOT_BETWEEN
    AlertMetricSpecificValueComparator:
      allOf:
        - $ref: '#/components/schemas/AlertMetricValueComparator'
        - type: object
          required:
            - targetValue
          properties:
            targetValue:
              type: number
              format: float
    AlertMetricValueInRangeComparator:
      allOf:
        - $ref: '#/components/schemas/AlertMetricValueComparator'
        - type: object
          description: Alert is triggered when `actual >= min AND actual < max`
          required:
            - minInclusive
            - maxExclusive
          properties:
            minInclusive:
              type: number
              format: float
            maxExclusive:
              type: number
              format: float
    AlertMetricValueNotInRangeComparator:
      allOf:
        - $ref: '#/components/schemas/AlertMetricValueComparator'
        - type: object
          description: Alert is triggered when `actual < min OR actual >= max`
          required:
            - minExclusive
            - maxInclusive
          properties:
            minExclusive:
              type: number
              format: float
            maxInclusive:
              type: number
              format: float
    AdHocAlertResultsDTO:
      type: object
      required:
        - alerts
      properties:
        alerts:
          type: array
          items:
            $ref: '#/components/schemas/AdHocAlertResultsItem'
    AdHocAlertResultsItem:
      type: object
      required:
        - alert
        - result
      properties:
        alert:
          $ref: '#/components/schemas/AdHocAlertRequestItem'
        result:
          $ref: '#/components/schemas/AdHocAlertResultDetails'
    AdHocAlertResultDetails:
      type: object
      required:
        - status
      properties:
        status:
          $ref: '#/components/schemas/AlertResultStatusEnum'
        actualValue:
          description: Value of the computed metric or its change.
          type: number
          format: double
        currentRunValue:
          description: >-
            Value of computed metric for current run. Present when alert is
            configured on metric change, not on single run metric value
          type: number
          format: double
        previousRunValue:
          description: >-
            Value of computed metric for previous run. Present when alert is
            configured on metric change, not on single run metric value
          type: number
          format: double
        affectedPageCount:
          description: >-
            Number of pages that are affected by triggered alert. Present when
            alert is triggered and metric type supports it
          type: integer
        filteredPageCount:
          description: Total number of pages that were used to compute alert.
          type: integer
    AlertResultStatusEnum:
      type: string
      description: >
        All statuses except `TRIGGERED` and `NOT_TRIGGERED` mean that
        alert/metric could not be computed. Statuses:

        - UNKNOWN_ERROR: data retrieval or alert computation failed

        - RUN_NOT_FOUND: requested run not found

        - NO_VALUE: no data found for requested run (e.g. rules or consent
        categories were not applied)  

        - PREVIOUS_RUN_NOT_FOUND: previous run not found for run-over-run metric
        change alert

        - PREVIOUS_RUN_NO_VALUE: no data found for previous run for run-over-run
        metric change alert
      enum:
        - TRIGGERED
        - NOT_TRIGGERED
        - UNKNOWN_ERROR
        - RUN_NOT_FOUND
        - NO_VALUE
        - PREVIOUS_RUN_NOT_FOUND
        - PREVIOUS_RUN_NO_VALUE
    AlertId:
      type: integer
      format: int64
    LabelId:
      type: integer
      format: int64
    CreateAlertRequestDTO:
      type: object
      description: >
        Alert is triggered when comparison holds: `actual value`
        &lt;targetValueComparisonOperator&gt; `targetValue`
      required:
        - name
        - metricType
        - targetValueComparator
        - filtersV0
      properties:
        name:
          $ref: '#/components/schemas/AlertName'
        labels:
          type: array
          description: >-
            Passing null instead of this array while updating an entity will
            prevent API from changing associated labels
          items:
            $ref: '#/components/schemas/LabelId'
        metricType:
          $ref: '#/components/schemas/AlertMetricTypeEnum'
        metricChangeType:
          $ref: '#/components/schemas/AlertMetricChangeTypeEnum'
        targetValueComparator:
          $ref: '#/components/schemas/AlertMetricValueComparator'
        filtersV0:
          type: object
          description: >
            Filters to be applied before computing the alert. Exact type depends
            on `metricType`, see mapping in `AlertMetricTypeToFilterMapping`
        emails:
          type: array
          description: >-
            List of email addresses that receive notifications when alert
            triggers. Will be replaced with Notification Profiles
          items:
            $ref: '#/components/schemas/EmailAddress'
        customAlertMessage:
          type: string
        notificationPolicy:
          $ref: '#/components/schemas/AlertNotificationPolicyEnum'
        isDefaultForNewDataSources:
          $ref: '#/components/schemas/AlertIsDefaultForNewDataSources'
        assignments:
          type: array
          description: >
            Passing null instead of this array while updating an alert will
            prevent API from changing its assignments.   

            To pass only updates of assignments (additions/removals) for
            existing alert use `PATCH /v3/alerts/{alertId}/target-items`
            endpoint
          items:
            $ref: '#/components/schemas/AlertAssignmentItem'
        skipSendingAlertSharedWithYouEmail:
          type: boolean
          description: >
            When TRUE, "Alert shared with you" email will NOT be sent to newly
            added email addresses.

            When NOT specified or FALSE, it will be sent.
    AlertIsDefaultForNewDataSources:
      type: boolean
      description: >
        Makes this alert selected by default in data-source (audit/WJ) creation
        UI.

        This is a user-specific flag.
    AlertNotificationPolicyEnum:
      type: string
      description: >
        Behaviour per type:

        - WHEN_NEWLY_TRIGGERED: (*default*) send alert when goes from "ok" to
        "triggered" (resets when no longer triggered)

        - ALWAYS_WHEN_TRIGGERED: send alert notification each time it is
        triggered per run
      enum:
        - WHEN_NEWLY_TRIGGERED
        - ALWAYS_WHEN_TRIGGERED
    AlertAssignmentItem:
      type: object
      required:
        - itemType
        - itemId
      properties:
        itemType:
          $ref: '#/components/schemas/AlertAssignmentItemTypeEnum'
        itemId:
          $ref: '#/components/schemas/AlertAssignmentItemId'
    AlertAssignmentItemTypeEnum:
      type: string
      enum:
        - AUDIT
        - WEB_JOURNEY
    AlertAssignmentItemId:
      type: integer
      format: int64
      description: >-
        ID of the item that can have assigned Alert(s) onto it. See also
        `AlertAssignmentTypeEnum`
    CreateAlertResponseDTO:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/AlertId'
    GetAlertDefinitionResponseDTO:
      allOf:
        - $ref: '#/components/schemas/AlertConfigTrait'
        - type: object
          description: >
            Alert is triggered when comparison holds: `actual value`
            &lt;targetValueComparisonOperator&gt; `targetValue`
          required:
            - id
            - labels
            - emails
            - notificationPolicy
            - isDefaultForNewDataSources
          properties:
            id:
              $ref: '#/components/schemas/AlertId'
            labels:
              type: array
              minItems: 0
              items:
                $ref: '#/components/schemas/LabelId'
            emails:
              type: array
              description: >-
                List of email addresses that receive notifications when alert
                triggers. Will be replaced with Notification Profiles
              minItems: 0
              items:
                $ref: '#/components/schemas/EmailAddress'
            customAlertMessage:
              type: string
            notificationPolicy:
              $ref: '#/components/schemas/AlertNotificationPolicyEnum'
            isDefaultForNewDataSources:
              $ref: '#/components/schemas/AlertIsDefaultForNewDataSources'
    GetAlertsLibraryRequestDTO:
      type: object
      description: >-
        All filters are optional. All populated filters are combined via `AND`
        boolean operator
      properties:
        alertName:
          minLength: 1
          type: string
          description: when present works as "alert `name` contains give substring` filter
        metricType:
          $ref: '#/components/schemas/AlertMetricTypeEnum'
        labels:
          type: array
          minItems: 1
          items:
            $ref: '#/components/schemas/LabelId'
        createdByUserId:
          $ref: '#/components/schemas/UserId'
        isSubscribed:
          type: boolean
          default: false
          description: >-
            When `true` then only those alerts will be returned that have
            Notification Profile of a requestor user assigned onto them
    GetAlertsLibrarySortColumn:
      type: string
      enum:
        - ALERT_NAME
        - TARGET_ITEMS
        - REPORT_METRIC
        - UPDATED_AT
        - SUBSCRIBERS
    GetAlertsLibraryResponseDTO:
      type: object
      required:
        - metadata
        - alerts
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        alerts:
          type: array
          items:
            title: GetAlertsLibraryItem
            type: object
            required:
              - id
              - name
              - metricType
              - labels
              - updatedAt
              - targetItemCount
              - subscribedCount
              - isOwner
            properties:
              id:
                $ref: '#/components/schemas/AlertId'
              name:
                $ref: '#/components/schemas/AlertName'
              metricType:
                $ref: '#/components/schemas/AlertMetricTypeEnum'
              labels:
                type: array
                minItems: 0
                items:
                  $ref: '#/components/schemas/LabelId'
              updatedAt:
                $ref: '#/components/schemas/DateAndTime'
              targetItemCount:
                type: integer
                description: Number of audits/journeys that have this alert configured
              subscribedCount:
                type: integer
                description: Number of notification profiles configured for this alert
              isOwner:
                type: boolean
                description: Indicates whether the current user is the owner of this alert
    GetAlertsByMetricSortColumn:
      type: string
      enum:
        - ALERT_NAME
        - SUBSCRIBERS
    GetAlertsByMetricResponseDTO:
      type: object
      required:
        - metadata
        - alerts
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        alerts:
          type: array
          items:
            $ref: '#/components/schemas/GetAlertsByMetricItem'
    GetAlertsByMetricItem:
      allOf:
        - $ref: '#/components/schemas/AlertConfigTrait'
        - type: object
          required:
            - id
            - emails
          properties:
            id:
              $ref: '#/components/schemas/AlertId'
            emails:
              type: array
              description: >-
                List of email addresses that receive notifications when alert
                triggers. Will be replaced with Notification Profiles
              minItems: 0
              items:
                $ref: '#/components/schemas/EmailAddress'
    AlertConfigTrait:
      description: Core parts of alert definition
      type: object
      required:
        - name
        - metricType
        - targetValueComparator
        - filtersV0
      properties:
        name:
          $ref: '#/components/schemas/AlertName'
        metricType:
          $ref: '#/components/schemas/AlertMetricTypeEnum'
        metricChangeType:
          $ref: '#/components/schemas/AlertMetricChangeTypeEnum'
        targetValueComparator:
          $ref: '#/components/schemas/AlertMetricValueComparator'
        filtersV0:
          type: object
          description: >
            Filters to be applied before computing the alert. Exact type depends
            on `metricType`, see mapping in `AlertMetricTypeToFilterMapping`
    SearchAlertAssignmentsRequestDTO:
      type: object
      description: >
        Filters for searching for items that may have specific Alert assigned or
        not assigned. 

        - when `alertId` is specified, `isAssigned` field in response object
        will be set to true 

        for items already assigned to alert with the specified ID
      properties:
        alertId:
          $ref: '#/components/schemas/AlertId'
        assignedToAlert:
          type: boolean
          description: >
            if `alertId` is NOT specified, `assignedToAlert` is ignored.

            if `alertId` IS specified `assignedToAlert` has 3 states:

            when TRUE - only items assigned to the specified alert will be
            returned;

            when FALSE - only NOT assigned;

            when NOT specified or NULL - both assigned and not assigned items
            will be returned
        itemName:
          type: string
          minLength: 1
          description: optional "item name contains substring" filter
        itemId:
          $ref: '#/components/schemas/AlertAssignmentItemId'
        itemLabels:
          type: array
          description: >-
            non-empty array of labels present on an item, works as "item has all
            specified labels" filter
          minItems: 1
          items:
            $ref: '#/components/schemas/LabelId'
        folders:
          $ref: '#/components/schemas/FoldersFilter'
    SearchAlertAssignmentsResponseDTO:
      type: object
      required:
        - metadata
        - items
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        items:
          type: array
          items:
            title: AlertAssignmentItem
            type: object
            description: >
              `itemLastRunAt` property available only for audits and
              web-journeys.
            required:
              - isAssigned
              - itemType
              - itemId
              - itemName
            properties:
              isAssigned:
                type: boolean
                description: TRUE if Alert is assigned to this item, FALSE otherwise
              itemType:
                $ref: '#/components/schemas/AlertAssignmentItemTypeEnum'
              itemId:
                $ref: '#/components/schemas/AlertAssignmentItemId'
              itemName:
                type: string
                description: Name of audit/WJ etc
              itemLastRunAt:
                $ref: '#/components/schemas/DateAndTime'
              itemLabels:
                description: may be absent if item does not support labels
                type: array
                minItems: 0
                items:
                  $ref: '#/components/schemas/LabelId'
    AlertAssignmentsSortColumn:
      type: string
      enum:
        - IS_ASSIGNED
        - ITEM_NAME
        - RUN_DATE
    SearchAlertsForAssignmentRequestDTO:
      type: object
      description: >-
        All included filters are optional. All populated filters are combined
        via `AND` boolean operator
      properties:
        targetItem:
          title: SearchAlertsForAssignmentSpecificTargetItem
          description: Item (audit/journey) alerts are assigned or not assigned to
          type: object
          required:
            - itemType
            - itemId
            - isAssigned
          properties:
            itemType:
              $ref: '#/components/schemas/AlertAssignmentItemTypeEnum'
            itemId:
              $ref: '#/components/schemas/AlertAssignmentItemId'
            isAssigned:
              type: boolean
              description: >-
                When TRUE it works as "alert IS assigned to specified target
                item (audit/journey)" and if false "alert IS NOT assigned to
                specified target item
        search:
          type: string
          minLength: 1
          description: >-
            When value is present it works as "alert `name` contains given
            substring" filter
        labels:
          type: array
          description: >-
            non-empty array of labels present on an alert, works as "alert has
            all specified labels" filter
          minItems: 1
          items:
            $ref: '#/components/schemas/LabelId'
        isDefaultForNewDataSources:
          $ref: '#/components/schemas/AlertIsDefaultForNewDataSources'
    SearchAlertsForAssignmentResponseDTO:
      type: object
      required:
        - metadata
        - alerts
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        alerts:
          type: array
          minItems: 0
          items:
            title: SearchAlertsForAssignmentAlertItem
            type: object
            required:
              - id
              - name
              - metricType
              - labels
            properties:
              id:
                $ref: '#/components/schemas/AlertId'
              name:
                $ref: '#/components/schemas/AlertName'
              metricType:
                $ref: '#/components/schemas/AlertMetricTypeEnum'
              labels:
                type: array
                minItems: 0
                items:
                  $ref: '#/components/schemas/LabelId'
    SearchAlertsForAssignmentSortColumn:
      type: string
      description: >
        Behaviour per type:

        - REPORT_METRIC: sort by name of data/report type corresponding to
        alert's `metricType`
      enum:
        - ALERT_NAME
        - REPORT_METRIC
    UpdateSpecificItemAlertsRequestDTO:
      type: object
      required:
        - assignmentUpdates
      properties:
        assignmentUpdates:
          type: array
          items:
            title: UpdateSpecificItemAlertAssignments_Item
            type: object
            required:
              - alertId
              - operation
            properties:
              alertId:
                $ref: '#/components/schemas/AlertId'
              operation:
                $ref: '#/components/schemas/AlertAssignmentUpdateOperationTypeEnum'
    UpdateSpecificAlertAssignmentsRequestDTO:
      type: object
      required:
        - assignmentUpdates
      properties:
        assignmentUpdates:
          type: array
          items:
            title: UpdateSpecificAlertAssignments_Item
            type: object
            required:
              - scope
              - itemType
              - itemId
              - operation
            properties:
              scope:
                description: For forward-compatibility
                type: string
                enum:
                  - SINGLE_ITEM
              itemType:
                $ref: '#/components/schemas/AlertAssignmentItemTypeEnum'
              itemId:
                $ref: '#/components/schemas/AlertAssignmentItemId'
              operation:
                $ref: '#/components/schemas/AlertAssignmentUpdateOperationTypeEnum'
    AlertAssignmentUpdateOperationTypeEnum:
      type: string
      description: >
        Meaning by type:

        - ASSIGN: add (if not exist) or update (if already exists) alert
        assignment

        - UNASSIGN: remove alert assignment. Does nothing if assignment does not
        exist
      enum:
        - ASSIGN
        - UNASSIGN
    AccountUsageV2_RequestDTO:
      type: object
      description: Filters for usage report
      properties:
        dataSources:
          type: array
          description: >-
            Non-empty array of data sources. Usage for selected data sources
            only will be shown
          minItems: 1
          items:
            $ref: '#/components/schemas/ItemId'
        dataSourceCreators:
          type: array
          description: >-
            Non-empty array of user IDs. Matches data sources that have been
            created by any of the specified users
          minItems: 1
          items:
            $ref: '#/components/schemas/UserId'
        dataSourceFolders:
          $ref: '#/components/schemas/FoldersFilter'
        dataSourceLabels:
          type: array
          description: >-
            Non-empty array of labels present on an item. Matches data sources
            that have all specified labels
          minItems: 1
          items:
            $ref: '#/components/schemas/LabelId'
        runFrequencies:
          type: array
          description: >-
            Non-empty array of frequency names. Matches data sources that have
            any of the specified frequencies
          minItems: 1
          items:
            $ref: '#/components/schemas/AccountUsageV2_RunFrequency'
        contractTerm:
          $ref: '#/components/schemas/AccountUsageV2_ContractTermFilter'
    AccountUsageV2_ExportRequestDTO:
      description: Filters for usage report exports
      allOf:
        - $ref: '#/components/schemas/AccountUsageV2_RequestDTO'
        - type: object
          properties:
            runDateRange:
              $ref: '#/components/schemas/AccountUsageV2_RunDateRangeFilter'
    AccountUsageV2_RunDateRangeFilter:
      type: object
      required:
        - startDateInclusive
        - endDateExclusive
      properties:
        startDateInclusive:
          $ref: '#/components/schemas/DateUtc'
        endDateExclusive:
          $ref: '#/components/schemas/DateUtc'
    AccountUsageV2_DataSourcesFilterItem:
      type: object
      required:
        - itemType
        - itemId
      properties:
        itemType:
          $ref: '#/components/schemas/AccountUsageV2_ItemTypeEnum'
        itemId:
          $ref: '#/components/schemas/ItemId'
    AccountUsageV2_ContractTermFilter:
      type: object
      description: Select specific contract term. Current term will be shown if omitted
      required:
        - startDateInclusive
        - endDateInclusive
      properties:
        startDateInclusive:
          $ref: '#/components/schemas/DateUtc'
        endDateInclusive:
          $ref: '#/components/schemas/DateUtc'
    AccountUsageV2_Overview_ResponseDTO:
      type: object
      description: >
        `webJourneyUsage` can be absent if web journeys are not included in
        contract.
      required:
        - auditUsage
        - allowOverages
      properties:
        auditUsage:
          $ref: '#/components/schemas/AccountUsageV2_Overview_SpecificItemTypeUsage'
        webJourneyUsage:
          $ref: '#/components/schemas/AccountUsageV2_Overview_SpecificItemTypeUsage'
        allowOverages:
          $ref: '#/components/schemas/AccountUsageV2_AllowOveragesFlag'
    AccountUsageV2_Overview_SpecificItemTypeUsage:
      type: object
      description: |
        `usagePercentage` and `usageLimit` can be omitted if there is no limit.
        `overLimitPrice` is only visible to account admins.
      required:
        - currentContractTerm
        - usageCount
      properties:
        usageCount:
          type: integer
          format: integer
          description: >-
            Number of pages scanned (for audits) or runs completed (for web
            journeys) to date
        usageLimit:
          type: integer
          format: integer
          description: >-
            Limit of pages scanned (for audits) or runs completed (for web
            journeys) for the current contract term
        limitNoteType:
          $ref: '#/components/schemas/AccountUsageV2_LimitNoteTypeEnum'
        usagePercentage:
          type: number
          format: float
          description: Percentage of usage relative to contract term limit
        overLimitPrice:
          $ref: '#/components/schemas/AccountUsageV2_OverLimitPrice'
        currentContractTerm:
          $ref: '#/components/schemas/AccountUsageV2_ContractTerm'
    AccountUsageV2_Summary_ResponseDTO:
      type: object
      required:
        - usersUsage
        - contacts
        - allowOverages
      properties:
        usersUsage:
          $ref: '#/components/schemas/AccountUsageV2_Summary_UsersUsage'
        contacts:
          type: array
          description: List of people to contact for support
          minItems: 0
          items:
            $ref: '#/components/schemas/AccountUsageV2_Summary_SupportContact'
        allowOverages:
          $ref: '#/components/schemas/AccountUsageV2_AllowOveragesFlag'
    AccountUsageV2_Summary_SupportContact:
      type: object
      required:
        - type
        - name
        - email
      properties:
        type:
          $ref: '#/components/schemas/AccountUsageV2_Summary_SupportContactType'
        name:
          type: string
          description: Name of the person to contact
        email:
          type: string
    AccountUsageV2_Summary_SupportContactType:
      type: string
      description: |
        `AE` - Account Executive
        `CSM` - Customer Success Manager
      enum:
        - AE
        - CSM
    AccountUsageV2_Summary_UsersUsage:
      type: object
      required:
        - totalUsers
        - usersLoggedInLast30Days
      properties:
        totalUsers:
          description: Number of users in account
          type: integer
        usersLoggedInLast30Days:
          type: array
          description: List of user IDs that logged in last 30 days
          items:
            $ref: '#/components/schemas/UserId'
    AccountUsageV2_SpecificItemTypeSummary_ResponseDTO:
      type: object
      required:
        - currentContractTerm
        - contractTerms
        - usage
      properties:
        currentContractTerm:
          $ref: '#/components/schemas/AccountUsageV2_ContractTerm'
        contractTerms:
          type: array
          description: Dates of contracts
          minItems: 0
          items:
            $ref: '#/components/schemas/AccountUsageV2_ContractTerm'
        usage:
          $ref: >-
            #/components/schemas/AccountUsageV2_SpecificItemTypeSummary_BaseUsage
    AccountUsageV2_SpecificItemTypeSummary_AuditUsage:
      x-discriminator-value: AUDIT
      allOf:
        - $ref: >-
            #/components/schemas/AccountUsageV2_SpecificItemTypeSummary_BaseUsage
    AccountUsageV2_SpecificItemTypeSummary_WebJourneyUsage:
      x-discriminator-value: WEB_JOURNEY
      allOf:
        - $ref: >-
            #/components/schemas/AccountUsageV2_SpecificItemTypeSummary_BaseUsage
        - type: object
          required:
            - supportUsage
          properties:
            supportUsage:
              $ref: >-
                #/components/schemas/AccountUsageV2_SpecificItemTypeSummary_WebJourneySupportUsage
    AccountUsageV2_SpecificItemTypeSummary_WebJourneySupportUsage:
      type: object
      description: >
        `maxMonitoredWebJourneys` and `remainingWebJourneySupportRequests` can
        be omitted if there is no limit

        `currentlyMonitoredWebJourneys#filtered` is no longer in use and will be
        omitted
      required:
        - currentlyMonitoredWebJourneys
      properties:
        currentlyMonitoredWebJourneys:
          $ref: '#/components/schemas/AccountUsageV2_FilterableInteger'
        maxMonitoredWebJourneys:
          type: integer
        remainingWebJourneySupportRequests:
          type: integer
    AccountUsageV2_SpecificItemTypeSummary_BaseUsage:
      type: object
      description: >
        Subtypes:

        - AccountUsageV2_SpecificItemTypeSummary_AuditUsage

        - AccountUsageV2_SpecificItemTypeSummary_WebJourneyUsage


        `cumulativeTotal` - number of pages scanned (for audits) or runs
        completed (for web journeys) to date.

        `termLimit`, `cumulativePacing` - can be omitted if there is no limit.

        `overLimitPrice` is only visible to account admins.
      required:
        - itemType
        - cumulativeTotal
      properties:
        itemType:
          $ref: '#/components/schemas/AccountUsageV2_ItemTypeEnum'
        cumulativeTotal:
          $ref: '#/components/schemas/AccountUsageV2_FilterableInteger'
        termLimit:
          $ref: '#/components/schemas/AccountUsageV2_TermLimit'
        limitNoteType:
          $ref: '#/components/schemas/AccountUsageV2_LimitNoteTypeEnum'
        cumulativePacing:
          $ref: '#/components/schemas/AccountUsageV2_CumulativePacing'
        overLimitPrice:
          $ref: '#/components/schemas/AccountUsageV2_OverLimitPrice'
      discriminator:
        propertyName: itemType
        mapping:
          AUDIT: >-
            #/components/schemas/AccountUsageV2_SpecificItemTypeSummary_AuditUsage
          WEB_JOURNEY: >-
            #/components/schemas/AccountUsageV2_SpecificItemTypeSummary_WebJourneyUsage
    AccountUsageV2_Trends_ResponseDTO:
      type: object
      description: |
        `termLimit`, `monthlyPacing` - can be omitted if there is no limit
      required:
        - pastPeriods
        - futurePeriods
      properties:
        pastPeriods:
          type: array
          description: Represents all past months
          items:
            $ref: '#/components/schemas/AccountUsageV2_Trends_PastPeriod'
        currentPeriod:
          $ref: '#/components/schemas/AccountUsageV2_Trends_CurrentPeriod'
        futurePeriods:
          type: array
          description: Represents future months, with projected values
          items:
            $ref: '#/components/schemas/AccountUsageV2_Trends_FuturePeriod'
        termLimit:
          $ref: '#/components/schemas/AccountUsageV2_TermLimit'
        limitNoteType:
          $ref: '#/components/schemas/AccountUsageV2_LimitNoteTypeEnum'
        monthlyPacing:
          $ref: '#/components/schemas/AccountUsageV2_MonthlyPacing'
    AccountUsageV2_Trends_PastPeriod:
      allOf:
        - $ref: '#/components/schemas/AccountUsageV2_Trends_BasePeriodTrait'
        - type: object
          description: >
            `periodTotal` and `cumulativeTotal` can represent either pages
            scanned (for audits) or runs completed (for web journeys)
          required:
            - periodTotal
            - cumulativeTotal
          properties:
            periodTotal:
              $ref: '#/components/schemas/AccountUsageV2_FilterableInteger'
            cumulativeTotal:
              $ref: '#/components/schemas/AccountUsageV2_FilterableInteger'
    AccountUsageV2_Trends_FuturePeriod:
      allOf:
        - $ref: '#/components/schemas/AccountUsageV2_Trends_BasePeriodTrait'
        - type: object
          description: >
            `periodProjectedTotal` and `cumulativeProjectedTotal` can represent
            either pages scanned (for audits) or runs completed (for web
            journeys)
          required:
            - periodProjectedTotal
            - cumulativeProjectedTotal
          properties:
            periodProjectedTotal:
              $ref: '#/components/schemas/AccountUsageV2_FilterableProjectedUsage'
            cumulativeProjectedTotal:
              $ref: '#/components/schemas/AccountUsageV2_FilterableProjectedUsage'
    AccountUsageV2_Trends_CurrentPeriod:
      description: >
        `periodTotal` and `cumulativeTotal` calculated for completed runs in
        current period, `periodProjectedTotal` and `cumulativeProjectedTotal`
        estimated for future runs
      allOf:
        - $ref: '#/components/schemas/AccountUsageV2_Trends_PastPeriod'
        - $ref: '#/components/schemas/AccountUsageV2_Trends_FuturePeriod'
    AccountUsageV2_Trends_BasePeriodTrait:
      type: object
      description: >
        `startDateInclusive` and `endDateExclusive` define period of time for
        which usage is shown
      required:
        - startDateInclusive
        - endDateExclusive
      properties:
        startDateInclusive:
          $ref: '#/components/schemas/DateUtc'
        endDateExclusive:
          $ref: '#/components/schemas/DateUtc'
    AccountUsageV2_DailyTrends_ResponseDTO:
      type: object
      required:
        - dailyUsageItems
      properties:
        dailyUsageItems:
          type: array
          description: >-
            Runs completed per day in the last 3 days, today and scheduled in
            the next 3 days
          items:
            $ref: '#/components/schemas/AccountUsageV2_DailyTrends_Usage'
    AccountUsageV2_DailyTrends_Usage:
      type: object
      description: Scheduled items are shown only for today and dates in the future
      required:
        - day
      properties:
        day:
          $ref: '#/components/schemas/DateUtc'
        noOfCompletedRuns:
          type: integer
        noOfScheduledRuns:
          type: integer
        completedItems:
          type: array
          description: 100 items per day in the account
          maxItems: 100
          items:
            $ref: >-
              #/components/schemas/AccountUsageV2_DailyTrends_ItemInfoWithRunDetails
        scheduledItems:
          type: array
          description: 100 items per day in the account
          maxItems: 100
          items:
            $ref: >-
              #/components/schemas/AccountUsageV2_DailyTrends_ScheduledItemInfoWithRunDetails
        noOfPagesScanned:
          description: used for Audits only
          type: integer
        noOfPagesScheduledToScan:
          description: used for Audits only
          type: integer
    AccountUsageV2_DailyTrends_ItemInfoWithRunDetails:
      allOf:
        - $ref: '#/components/schemas/AccountUsageV2_DailyTrends_ItemInfo'
        - type: object
          properties:
            lastRunId:
              $ref: '#/components/schemas/RunId'
            lastRunCompletedAt:
              $ref: '#/components/schemas/DateAndTime'
            noOfRunsCompleted:
              type: integer
    AccountUsageV2_DailyTrends_ScheduledItemInfoWithRunDetails:
      allOf:
        - $ref: '#/components/schemas/AccountUsageV2_DailyTrends_ItemInfo'
        - type: object
          properties:
            nextScheduledRunDateTime:
              $ref: '#/components/schemas/DateAndTime'
            noOfRunsScheduled:
              type: integer
            noOfPagesScheduledToScan:
              type: integer
    AccountUsageV2_DailyTrends_ItemInfo:
      type: object
      required:
        - frequency
        - itemName
        - itemId
      properties:
        frequency:
          $ref: '#/components/schemas/AccountUsageV2_RunFrequency'
        description:
          description: Schedule description or value of frequency if no schedule is present
          type: string
        itemName:
          description: Audit name or Web Journey name
          type: string
        itemId:
          description: Audit ID or Web Journey ID
          type: integer
    AccountUsageV2_FilterableInteger:
      type: object
      description: |
        `filtered` property can be omitted if filters were not applied
      required:
        - total
      properties:
        total:
          type: integer
        filtered:
          type: integer
    AccountUsageV2_ProjectedUsage:
      type: object
      required:
        - scheduledUsageEstimate
        - historicalUsageEstimate
      properties:
        scheduledUsageEstimate:
          description: Based on scheduled runs
          type: integer
        historicalUsageEstimate:
          description: Based on historical averages
          type: integer
    AccountUsageV2_FilterableProjectedUsage:
      type: object
      description: >-
        Duplicates `AccountUsageV2_ProjectedUsage`, but includes `total` and
        `filtered` values for each estimate
      required:
        - scheduledUsageEstimate
        - historicalUsageEstimate
      properties:
        scheduledUsageEstimate:
          $ref: '#/components/schemas/AccountUsageV2_FilterableInteger'
        historicalUsageEstimate:
          $ref: '#/components/schemas/AccountUsageV2_FilterableInteger'
    AccountUsageV2_ItemTypeEnum:
      type: string
      enum:
        - AUDIT
        - WEB_JOURNEY
    AccountUsageV2_TermLimit:
      type: integer
      description: >-
        Limit of pages scanned (for audits) or runs completed (for web journeys)
        for the contract term
    AccountUsageV2_LimitNoteTypeEnum:
      type: string
      enum:
        - UNLIMITED
        - LIMIT_UNDETERMINED
    AccountUsageV2_CumulativePacing:
      type: integer
      description: >-
        Shows how many pages should be scanned to date to hit the limit by the
        end of the contract term
    AccountUsageV2_MonthlyPacing:
      type: integer
      description: >-
        Shows how many pages should be scanned per month to hit the limit by the
        end of the contract term
    AccountUsageV2_OverLimitPrice:
      description: >-
        Price of a page scan (for audits) or a run (for web journeys) over the
        limit
      allOf:
        - $ref: '#/components/schemas/MonetaryAmount'
    AccountUsageV2_AllowOveragesFlag:
      type: boolean
      description: >
        When TRUE, account is allowed to go over the limit and will be charged
        for overages.

        When FALSE, account will be blocked from running audits and web journeys
        that will go over the limit.
    AccountUsageV2_ContractTerm:
      type: object
      description: Contract start and end dates
      required:
        - startDateInclusive
        - endDateInclusive
      properties:
        startDateInclusive:
          $ref: '#/components/schemas/DateUtc'
        endDateInclusive:
          $ref: '#/components/schemas/DateUtc'
    AccountUsageV2_RunFrequency:
      type: string
      description: combination of journey and audit frequency
      enum:
        - paused
        - once
        - 15 minutes
        - 1 hour
        - 6 hours
        - 12 hours
        - daily
        - weekly
        - biweekly
        - monthly
        - quarterly
        - semiannually
        - yearly
        - custom
        - unscheduled
    NotificationCenter_GetEmails_RequestDTO:
      type: object
      description: Filters for searching for emails
      required:
        - itemType
        - itemIds
      properties:
        itemType:
          $ref: >-
            #/components/schemas/NotificationCenter_EmailSubscriptionItemTypeEnum
        itemIds:
          type: array
          description: >-
            Non-empty array of item IDs. Emails for selected items only will be
            shown
          minItems: 1
          items:
            $ref: '#/components/schemas/ItemId'
    NotificationCenter_EmailSubscriptionItemTypeEnum:
      type: string
      enum:
        - AUDIT
    NotificationCenter_GetEmails_ResponseDTO:
      type: object
      description: All emails in an account
      required:
        - emails
      properties:
        emails:
          type: array
          minItems: 0
          items:
            title: NotificationCenter_EmailItem
            type: object
            required:
              - email
              - usage
            properties:
              email:
                type: string
              usage:
                $ref: '#/components/schemas/NotificationCenter_EmailUsage'
    NotificationCenter_EmailUsage:
      type: object
      required:
        - auditCount
        - webJourneyCount
        - ruleCount
        - alertCount
        - emailInboxMessageReceivedCount
        - emailInboxMessageProcessedCount
      properties:
        auditCount:
          type: integer
        webJourneyCount:
          type: integer
        ruleCount:
          type: integer
        alertCount:
          type: integer
          description: Number of alerts excluding usage alerts
        usageAlertCount:
          type: integer
        emailInboxMessageReceivedCount:
          type: integer
        emailInboxMessageProcessedCount:
          type: integer
        scheduledExportCount:
          type: integer
    NotificationCenter_SearchForAssignments_RequestDTO:
      type: object
      description: >-
        Filters for searching for items that may have specific email assigned or
        not assigned
      required:
        - email
      properties:
        email:
          type: string
          minLength: 1
          description: email to search for
        itemName:
          type: string
          minLength: 1
          description: optional "item name contains substring" filter
        itemLabels:
          type: array
          description: >-
            non-empty array of labels present on an item. When multiple labels
            specified, target item is expected to have all of them (condition
            works as "AND" for all labels specified)
          minItems: 1
          items:
            $ref: '#/components/schemas/LabelId'
        isAssigned:
          type: boolean
          description: >
            - when TRUE - only target items with the specified `email` currently
            assigned will be returned;

            - when FALSE - only target items with the specified `email`
            currently NOT assigned will be returned;

            - when UNDEFINED or NULL - flag is ignored.
    NotificationCenter_SearchForAssignments_ResponseDTO:
      type: object
      required:
        - metadata
        - items
      properties:
        metadata:
          $ref: '#/components/schemas/CommonIterableResponseMetadata'
        items:
          type: array
          items:
            title: NotificationCenter_AssignmentItem
            type: object
            description: >
              `itemLastRunAt` property available only for audits and
              web-journeys.
            required:
              - isAssigned
              - isEditable
              - itemType
              - itemId
              - itemName
            properties:
              isAssigned:
                type: boolean
                description: >-
                  TRUE if specified `email` is assigned to this item, FALSE
                  otherwise
              isEditable:
                type: boolean
                description: >-
                  TRUE if specified `email` can be assigned or unassigned from
                  this item, FALSE otherwise
              itemType:
                $ref: '#/components/schemas/NotificationCenter_AssignmentItemTypeEnum'
              itemId:
                $ref: '#/components/schemas/ItemId'
              itemName:
                type: string
                description: Name of audit/WJ/rule/alert etc
              itemLastRunAt:
                $ref: '#/components/schemas/DateAndTime'
              itemLabels:
                description: may be absent if item does not support labels
                type: array
                minItems: 0
                items:
                  $ref: '#/components/schemas/LabelId'
    NotificationCenter_AssignmentItemTypeEnum:
      type: string
      enum:
        - AUDIT
        - WEB_JOURNEY
        - RULE
        - ALERT
        - USAGE_ALERT
        - EMAIL_INBOX_MESSAGE_RECEIVED
        - EMAIL_INBOX_MESSAGE_PROCESSED
        - SCHEDULED_EXPORT
    NotificationCenter_AssignmentsSortColumn:
      type: string
      enum:
        - IS_ASSIGNED
        - ITEM_NAME
        - RUN_DATE
    ReportFilterValidation_RegexRequestDTO:
      type: object
      required:
        - regex
      properties:
        regex:
          type: string
    ReportFilterValidation_RegexResponseDTO:
      type: object
      required:
        - isValid
        - allUnsupportedSequences
      properties:
        isValid:
          type: boolean
        unsupportedSequence:
          type: string
          description: First unsupported by ObservePoint sequence found in regex
        allUnsupportedSequences:
          type: array
          description: list of all unsupported by ObservePoint regex features/sequences
          items:
            type: string
    AuditRun_PageSummary_WebVitals_LargestContentfulPaintFilter:
      description: >-
        Largest Contentful Paint time in milliseconds. Should have `min` and/or
        `max` properties defined. `min` is inclusive and `max` is exclusive.
        `min` should be less than `max`.
      $ref: '#/components/schemas/IntegerRangeFilterTrait'
    AuditRun_PageSummary_WebVitals_FirstContentfulPaintFilter:
      description: >-
        First Contentful Paint time in milliseconds. Should have `min` and/or
        `max` properties defined. `min` is inclusive and `max` is exclusive.
        `min` should be less than `max`.
      $ref: '#/components/schemas/IntegerRangeFilterTrait'
    AuditRun_PageSummary_WebVitals_TimeToFirstByteFilter:
      description: >-
        Time to First Byte time in milliseconds. Should have `min` and/or `max`
        properties defined. `min` is inclusive and `max` is exclusive. `min`
        should be less than `max`.
      $ref: '#/components/schemas/IntegerRangeFilterTrait'
    AuditRun_PageSummary_WebVitals_CumulativeLayoutShiftFilter:
      description: >-
        Cumulative Layout Shift unitless measurement. Should have `min` and/or
        `max` properties defined. `min` is inclusive and `max` is exclusive.
        `min` should be less than `max`.
      $ref: '#/components/schemas/DoubleRangeFilterTrait'
    AuditRun_PageSummary_AggregatedRunWebVitals:
      type: object
      description: Web Vitals aggregated on run level
      required:
        - medianLargestContentfulPaint
        - medianFirstContentfulPaint
        - medianTimeToFirstByte
        - medianCumulativeLayoutShift
        - p75LargestContentfulPaint
        - p75FirstContentfulPaint
        - p75TimeToFirstByte
        - p75CumulativeLayoutShift
      properties:
        medianLargestContentfulPaint:
          type: number
          format: double
          minimum: 0
          description: >-
            median LCP time in milliseconds. This field is deprecated and will
            be removed in the future. Use 75th percentile LCP time instead.
          deprecated: true
        medianFirstContentfulPaint:
          type: number
          format: double
          minimum: 0
          description: >-
            median FCP time in milliseconds. This field is deprecated and will
            be removed in the future. Use 75th percentile FCP time instead.
          deprecated: true
        medianTimeToFirstByte:
          type: number
          format: double
          minimum: 0
          description: >-
            median TTFB time in milliseconds. This field is deprecated and will
            be removed in the future. Use 75th percentile TTFB time instead.
          deprecated: true
        medianCumulativeLayoutShift:
          type: number
          format: double
          minimum: 0
          description: >-
            median unitless measurement of CLS. This field is deprecated and
            will be removed in the future. Use 75th percentile CLS instead.
          deprecated: true
        p75LargestContentfulPaint:
          type: number
          format: double
          minimum: 0
          description: 75th percentile LCP time in milliseconds
        p75FirstContentfulPaint:
          type: number
          format: double
          minimum: 0
          description: 75th percentile FCP time in milliseconds
        p75TimeToFirstByte:
          type: number
          format: double
          minimum: 0
          description: 75th percentile TTFB time in milliseconds
        p75CumulativeLayoutShift:
          type: number
          format: double
          minimum: 0
          description: 75th percentile CLS, unitless measurement.
    AuditRun_WebVitalsTrends_Enum:
      type: string
      enum:
        - largest_contentful_paint
        - first_contentful_paint
        - time_to_first_byte
        - cumulative_layout_shift
    AuditRun_PageDetails_WebVitalsTrends_Response:
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_PageDetails_WebVitalsTrendsItem'
    AuditRun_PageDetails_WebVitalsTrendsItem:
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - $ref: '#/components/schemas/AuditRun_PageWebVitals'
    AuditRun_PageDetails_SpecificWebVitalsTrend_Response:
      type: object
      required:
        - stats
        - runs
      properties:
        stats:
          $ref: '#/components/schemas/AuditRun_PageDetails_WebVitalsTrends_Stats'
        runs:
          type: array
          items:
            allOf:
              - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
              - type: object
                required:
                  - trendValue
                properties:
                  trendValue:
                    type: number
                    format: double
    AuditRun_PageDetails_WebVitalsTrends_Stats:
      type: object
      description: Web Vitals trends statistics (min, max, average, median)
      required:
        - min
        - max
        - average
        - median
      properties:
        min:
          type: number
          format: double
        max:
          type: number
          format: double
        average:
          type: number
          format: double
        median:
          type: number
          format: double
    AuditRun_PageSummary_WebVitalsTrends_Response:
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/AuditRun_PageSummary_WebVitalsTrendsItem'
    AuditRun_PageSummary_WebVitalsTrendsItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - largestContentfulPaintStats
            - firstContentfulPaintStats
            - timeToFirstByteStats
            - cumulativeLayoutShiftStats
          properties:
            largestContentfulPaintStats:
              $ref: '#/components/schemas/AuditRun_PageSummary_WebVitalsTrends_Stats'
            firstContentfulPaintStats:
              $ref: '#/components/schemas/AuditRun_PageSummary_WebVitalsTrends_Stats'
            timeToFirstByteStats:
              $ref: '#/components/schemas/AuditRun_PageSummary_WebVitalsTrends_Stats'
            cumulativeLayoutShiftStats:
              $ref: '#/components/schemas/AuditRun_PageSummary_WebVitalsTrends_Stats'
    AuditRun_PageSummary_SpecificWebVitalsTrend_Response:
      type: object
      required:
        - runs
      properties:
        runs:
          type: array
          items:
            $ref: >-
              #/components/schemas/AuditRun_PageSummary_SpecificWebVitalsTrend_ResponseItem
    AuditRun_PageSummary_SpecificWebVitalsTrend_ResponseItem:
      x-implements:
        - >-
          com.observepoint.reportingapi.gen.interfaces.ItemRunTrendsItemTraitInterface
      allOf:
        - $ref: '#/components/schemas/ItemRunTrendsItemTrait'
        - type: object
          required:
            - stats
            - distribution
          properties:
            distribution:
              $ref: >-
                #/components/schemas/AuditRun_PageSummary_WebVitalsTrends_RunItem_PagesDistribution
            stats:
              $ref: '#/components/schemas/AuditRun_PageSummary_WebVitalsTrends_Stats'
    AuditRun_PageSummary_WebVitalsTrends_RunItem_PagesDistribution:
      type: object
      description: Distribution of pages by buckets of web vitals values
      required:
        - good
        - needsImprovement
        - poor
      properties:
        good:
          type: integer
        needsImprovement:
          type: integer
        poor:
          type: integer
    AuditRun_PageSummary_WebVitalsTrends_Stats:
      type: object
      description: >-
        Web Vitals trends statistics (min, max, average, median, 25th and 75th
        percentiles)
      required:
        - min
        - max
        - average
        - median
        - p25
        - p75
      properties:
        min:
          type: number
          format: double
        max:
          type: number
          format: double
        average:
          type: number
          format: double
        median:
          type: number
          format: double
        p25:
          type: number
          format: double
        p75:
          type: number
          format: double
    WebVitalsLargestContentfulPaint:
      type: number
      format: double
      description: LCP time in milliseconds
    AuditRun_PageWebVitals:
      type: object
      description: Web Vitals for a single page
      properties:
        largestContentfulPaint:
          $ref: '#/components/schemas/WebVitalsLargestContentfulPaint'
        firstContentfulPaint:
          type: number
          format: double
          description: FCP time in milliseconds
        timeToFirstByte:
          type: number
          format: double
          description: TTFB time in milliseconds
        cumulativeLayoutShift:
          type: number
          format: double
          description: unitless measurement of CLS
    ReceivedEmailMessageId:
      type: integer
    EmailInboxMessageAlertsRequestDTO:
      type: object
      required:
        - emailInboxId
        - messageIds
      properties:
        emailInboxId:
          type: integer
        messageIds:
          type: array
          description: Message IDs list cannot be empty
          minItems: 1
          maxItems: 200
          items:
            $ref: '#/components/schemas/ReceivedEmailMessageId'
    EmailInboxMessageAlertsResponseDTO:
      type: object
      required:
        - messages
      properties:
        messages:
          type: array
          minItems: 0
          items:
            $ref: '#/components/schemas/EmailInboxMessageAlertsResponse_MessageItem'
    EmailInboxMessageAlertsResponse_MessageItem:
      type: object
      required:
        - messageId
        - audits
      properties:
        messageId:
          $ref: '#/components/schemas/ReceivedEmailMessageId'
        audits:
          type: array
          minItems: 0
          items:
            $ref: '#/components/schemas/EmailInboxMessageAlertsResponse_AuditItem'
    EmailInboxMessageAlertsResponse_AuditItem:
      type: object
      description: >
        `assignedAlertCount` is the number of alerts computed for completed
        run, 

        number of alerts assigned to audit for not completed run.

        If audit is not completed then `triggeredAlertCount` property will be
        absent.
      required:
        - auditId
        - auditName
        - isCompleted
        - runId
        - assignedAlertCount
      properties:
        auditId:
          $ref: '#/components/schemas/AuditId'
        auditName:
          type: string
        isCompleted:
          type: boolean
        runId:
          $ref: '#/components/schemas/RunId'
        assignedAlertCount:
          type: integer
        triggeredAlertCount:
          type: integer
    SummarizeRunsRequestDTO:
      type: object
      properties:
        metricTypeIds:
          type: array
          items:
            type: integer
        resultTypeIds:
          type: array
          items:
            type: integer
    SummarizeRunRequestDTO:
      type: object
    SummarizeRunsResponseDTO:
      type: object
      required:
        - runIds
      properties:
        runIds:
          type: array
          items:
            $ref: '#/components/schemas/RunId'
    InvokeAuditLiveResultsResponseDTO:
      type: object
      required:
        - requestId
      properties:
        requestId:
          type: string
    PagesLiveResultsSortColumn:
      type: string
      default: pageId
      enum:
        - finalUrl
        - finalStatusCode
        - uniqueTagCount
        - uniqueCookieCount
        - dataLayerCount
        - consoleErrorCount
        - pageId
        - lcpSeconds
    TagsLiveResultsSortColumn:
      type: string
      default: tagId
      enum:
        - tagName
        - tagId
        - tagVendorName
        - tagCategory
        - pagesTagged
        - pagesNotTagged
    CookiesLiveResultsSortColumn:
      type: string
      default: domain
      enum:
        - name
        - domain
        - pagesWithCookie
        - partyType
        - partitionKey
        - durationMinutes
        - sameSite
        - secure
        - httpOnly
        - origin
    AccessibilityIssuesLiveResultsSortColumn:
      type: string
      default: impact
      enum:
        - issueType
        - wcagVersionAndConformanceLevel
        - impact
        - affectedPages
        - totalCount
    AthenaQueryResultStatus:
      type: string
      enum:
        - COMPLETE
        - PENDING
        - ERROR
    AuditLiveResultsBaseResponseDTO:
      description: >-
        Response for page live results. Will only contain results object when
        status is COMPLETE. `statusMessage` is populated when status is ERROR.
      type: object
      required:
        - status
      properties:
        status:
          $ref: '#/components/schemas/AthenaQueryResultStatus'
        statusMessage:
          type: string
        results:
          type: object
    AuditLiveResultsPagesResponseDTO:
      allOf:
        - $ref: '#/components/schemas/AuditLiveResultsBaseResponseDTO'
        - type: object
          properties:
            results:
              $ref: '#/components/schemas/AuditLiveResultsPageEntriesDTO'
    AuditLiveResultsTagsResponseDTO:
      allOf:
        - $ref: '#/components/schemas/AuditLiveResultsBaseResponseDTO'
        - type: object
          properties:
            results:
              $ref: '#/components/schemas/AuditLiveResultsTagEntriesDTO'
    AuditLiveResultsCookiesResponseDTO:
      allOf:
        - $ref: '#/components/schemas/AuditLiveResultsBaseResponseDTO'
        - type: object
          properties:
            results:
              $ref: '#/components/schemas/AuditLiveResultsCookieEntriesDTO'
    AuditLiveResultsAccessibilityIssuesResponseDTO:
      allOf:
        - $ref: '#/components/schemas/AuditLiveResultsBaseResponseDTO'
        - type: object
          properties:
            results:
              $ref: >-
                #/components/schemas/AuditLiveResultsAccessibilityIssuesEntriesDTO
    AuditLiveResultsPageEntriesDTO:
      description: Object containing all of the LiveResults(TM) data for the page query.
      type: object
      required:
        - pageEntries
      properties:
        pageEntries:
          type: array
          items:
            $ref: '#/components/schemas/AuditLiveResultsPageEntryDTO'
    AuditLiveResultsPageEntryDTO:
      type: object
      description: One page's worth of LiveResults(TM) data.
      required:
        - pageId
        - finalUrl
        - finalStatusCode
        - uniqueTagCount
        - uniqueCookieCount
        - dataLayerCount
        - consoleErrorCount
        - lcpSeconds
      properties:
        pageId:
          $ref: '#/components/schemas/PageId'
        finalUrl:
          $ref: '#/components/schemas/PageUrl'
        finalStatusCode:
          $ref: '#/components/schemas/PageStatusCode'
        uniqueTagCount:
          type: number
          description: Number of unique tags found on the page.
        uniqueCookieCount:
          type: number
          description: Number of unique cookies found on the page.
        dataLayerCount:
          type: number
          description: Number of data layers found on the page.
        consoleErrorCount:
          type: number
          description: Number of console error messages on the page.
        lcpSeconds:
          $ref: '#/components/schemas/WebVitalsLargestContentfulPaint'
        accessibilityScores:
          $ref: '#/components/schemas/PageAccessibilityScores'
    AuditLiveResultsTagEntriesDTO:
      description: Object containing all of the LiveResults(TM) data for the tag query.
      type: object
      required:
        - tagEntries
      properties:
        tagEntries:
          type: array
          items:
            $ref: '#/components/schemas/AuditLiveResultsTagEntryDTO'
    AuditLiveResultsTagEntryDTO:
      type: object
      description: One tag's worth of LiveResults(TM) data.
      required:
        - tagName
        - tagId
        - tagVendorName
        - tagCategory
        - pagesTagged
        - pagesNotTagged
      properties:
        tagName:
          type: string
        tagId:
          type: number
        tagVendorName:
          type: string
        tagCategory:
          type: string
        pagesTagged:
          type: number
        pagesNotTagged:
          type: number
    AuditLiveResultsCookieEntriesDTO:
      description: Object containing all of the LiveResults(TM) data for the cookies query.
      type: object
      required:
        - cookieEntries
      properties:
        cookieEntries:
          type: array
          items:
            $ref: '#/components/schemas/AuditLiveResultsCookieEntryDTO'
    AuditLiveResultsCookieEntryDTO:
      type: object
      description: One cookie's worth of LiveResults(TM) data.
      required:
        - name
        - domain
        - pagesWithCookie
        - partyType
        - partitionKey
        - durationMinutes
        - sameSite
        - secure
        - httpOnly
        - origin
      properties:
        name:
          type: string
        domain:
          type: string
        partitionKey:
          type: string
        pagesWithCookie:
          type: number
        partyType:
          type: array
          items:
            type: string
        durationMinutes:
          type: array
          items:
            type: number
        sameSite:
          type: array
          items:
            type: string
        secure:
          type: array
          items:
            type: boolean
        httpOnly:
          type: array
          items:
            type: boolean
        origin:
          type: array
          items:
            type: string
    AuditLiveResultsAccessibilityIssuesEntriesDTO:
      description: >-
        Object containing all of the LiveResults(TM) data for the accessibility
        issues query.
      type: object
      required:
        - accessibilityIssues
      properties:
        accessibilityIssues:
          type: array
          items:
            $ref: '#/components/schemas/AuditLiveResultsAccessibilityIssuesEntryDTO'
    AuditLiveResultsAccessibilityIssuesEntryDTO:
      type: object
      description: One accessibility issue's worth of LiveResults(TM) data.
      required:
        - issueType
        - affectedPages
        - totalCount
        - wcagVersionAndConformanceLevel
        - impact
      properties:
        issueType:
          type: string
        affectedPages:
          type: number
        totalCount:
          type: number
        wcagVersionAndConformanceLevel:
          type: string
        impact:
          type: string
    EmailInboxMessageDetailsResponseDTO:
      type: object
      required:
        - subject
        - sendingPlatform
        - sendingEmail
        - linksScanned
        - headers
        - screenshot
        - screenshotThumb
        - emailRawHtml
        - linksScannedValues
      properties:
        subject:
          type: string
        receivedAt:
          type: string
        sendingPlatform:
          type: string
        sendingEmail:
          type: string
        linksScanned:
          type: integer
        headers:
          type: array
          items:
            $ref: '#/components/schemas/EmailMessageDetailsHeaderDTO'
        screenshot:
          type: string
        screenshotThumb:
          type: string
        emailRawHtml:
          type: string
        linksScannedValues:
          description: All links found in the email message
          type: array
          items:
            type: string
    EmailMessageDetailsHeaderDTO:
      type: object
      required:
        - name
        - value
        - isId
        - vendor
        - description
      properties:
        name:
          type: string
        value:
          type: string
        isId:
          type: boolean
        vendor:
          type: string
        description:
          type: string
    ErrorModel:
      type: object
      properties:
        timestamp:
          type: string
          format: date-time
        message:
          type: string
        details:
          type: string
        validationReport:
          type: object
    PaginationMetadata:
      type: object
      required:
        - totalCount
        - totalPageCount
        - pageSize
        - currentPageSize
        - currentPageNumber
      properties:
        totalCount:
          description: Total number of items available from all result pages combined
          type: integer
        totalPageCount:
          description: Total number of pages available
          type: integer
        pageSize:
          description: >-
            Page size - number of items per result page configured by `size`
            query parameter or default page size
          type: integer
        currentPageSize:
          description: Number of items in current result page
          type: integer
        currentPageNumber:
          description: Current page number/ordinal
          type: integer
  responses:
    BadRequest:
      description: The request cannot be accepted
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorModel'
    UnAuthorized:
      description: Your token is invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorModel'
    Forbidden:
      description: You don't have enough rights to access this resource
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorModel'
    NotFound:
      description: The object you are looking is not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorModel'
    responses-BadRequest:
      description: The request cannot be accepted
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorModel'
    responses-UnAuthorized:
      description: Your token is invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorModel'
    responses-NotFound:
      description: The object you are looking is not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorModel'
    FailedDependency:
      description: >-
        The method could not be performed on the resource because the requested
        action depended on another action and that action failed.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorModel'
    responses-Forbidden:
      description: You don't have enough rights to access this resource
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorModel'
  securitySchemes:
    API_Key:
      type: apiKey
      in: header
      name: Authorization
      description: >
        Use the `Authorization` header in your requests with ObservePoint API
        key as header value.


        Example: `Authorization: abc123...def456`
