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

# Generate a live report document

> Writes the report now, for its latest closed period or a custom window (`periodStart` + `periodEnd`,
at most 92 days, ended). Returns 202 with the document in PENDING; poll
GET /v1/live-report/{reportId}/document/{documentId} until `status` is READY or FAILED (typically a few
minutes). An identical request already in flight is returned as-is. A generated document is not emailed.



## OpenAPI

````yaml /api-reference/openapi.documented.json post /v1/live-report/{reportId}/generate
openapi: 3.1.0
info:
  title: Roark Analytics API
  description: >-
    The Roark Analytics API gives you access to the same API that powers the
    award winning Roark Analytics platform.
  version: 1.0.0
servers:
  - description: Production
    url: https://api.roark.ai
security:
  - Bearer: []
tags:
  - name: Agent
  - name: Agent Endpoint
  - name: Phone Number
  - name: Call
  - name: Chat
  - name: Metric
  - name: Metric Policy
  - name: Metric Collection Job
  - name: Customer Flow
  - name: Customer Flow Edge Case
  - name: Simulation
  - name: Simulation Persona
  - name: Simulation Environment
  - name: Simulation Scenario
  - name: Simulation Run Plan
  - name: Simulation Template
  - name: Simulation Run Plan Job
  - name: Simulation Job
  - name: HTTP Request Definition
  - name: Webhook
  - name: Issue
  - name: Autoimprove
  - name: Agent Config
  - name: Knowledge Base
  - name: Config
  - name: Organization Project
  - name: Organization Project Member
  - name: Organization Project API Key
  - name: Organization Config
  - name: CLI Auth
  - name: Me
  - name: Project
  - name: Usage
  - name: Analytics
  - name: Dashboard
  - name: Live Report
  - name: Benchmark
  - name: Health
  - name: Prospect Simulation
paths:
  /v1/live-report/{reportId}/generate:
    post:
      tags:
        - Live Report
      summary: Generate a live report document
      description: >-
        Writes the report now, for its latest closed period or a custom window
        (`periodStart` + `periodEnd`,

        at most 92 days, ended). Returns 202 with the document in PENDING; poll

        GET /v1/live-report/{reportId}/document/{documentId} until `status` is
        READY or FAILED (typically a few

        minutes). An identical request already in flight is returned as-is. A
        generated document is not emailed.
      operationId: postV1Live-reportByReportIdGenerate
      parameters:
        - name: reportId
          in: path
          required: true
          description: The live report ID
          schema:
            type: string
            format: uuid
          example: 5c6d7e8f-9a0b-4c1d-8e2f-3a4b5c6d7e8f
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GenerateLiveReportInput'
      responses:
        '202':
          description: The document being written
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/LiveReportDocument'
                required:
                  - data
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
                description: Validation error
              example:
                type: validation
                code: invalid_parameter
                message: The request was invalid
                param: email
          description: >-
            Invalid report: an unknown agent, dashboard or metric, a target its
            metric cannot be read on, or a bad filter
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
                description: Authentication error
              example:
                type: authentication
                code: unauthorized
                message: Authentication required
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
                description: Permission error
              example:
                type: forbidden
                code: permission_denied
                message: You do not have permission to access this resource
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
                description: Not found error
              example:
                type: not_found
                code: resource_not_found
                message: The requested resource could not be found
          description: Report or document not found
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
                description: Conflict error
              example:
                type: conflict
                code: resource_in_use
                message: The resource is in use and cannot be deleted
          description: The report is managed by config as code
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
                description: Rate limit error
              example:
                type: rate_limit
                code: too_many_requests
                message: Rate limit exceeded
          description: Too Many Requests
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
                description: Server error
              example:
                type: internal
                code: internal_error
                message: Internal server error
          description: Internal Server Error
      x-codeSamples:
        - lang: JavaScript
          source: >-
            import Roark from '@roarkanalytics/sdk';


            const client = new Roark({
              bearerToken: process.env['ROARK_API_BEARER_TOKEN'], // This is the default and can be omitted
            });


            const response = await
            client.liveReport.run('5c6d7e8f-9a0b-4c1d-8e2f-3a4b5c6d7e8f');


            console.log(response.data);
        - lang: Python
          source: |-
            import os
            from roark_analytics import Roark

            client = Roark(
                bearer_token=os.environ.get("ROARK_API_BEARER_TOKEN"),  # This is the default and can be omitted
            )
            response = client.live_report.run(
                report_id="5c6d7e8f-9a0b-4c1d-8e2f-3a4b5c6d7e8f",
            )
            print(response.data)
components:
  schemas:
    GenerateLiveReportInput:
      type: object
      properties:
        periodStart:
          type: string
          format: date-time
          description: >-
            ISO 8601 start of a custom window. Omit both for the latest closed
            period.
        periodEnd:
          type: string
          format: date-time
          description: ISO 8601 end (exclusive) of a custom window. Requires periodStart.
      example: {}
    LiveReportDocument:
      type: object
      properties:
        id:
          type: string
          format: uuid
        projectId:
          type: string
          format: uuid
        liveReportId:
          type:
            - string
            - 'null'
          format: uuid
        periodStart:
          type: string
        periodEnd:
          type: string
        timezone:
          type: string
        cadence:
          type:
            - string
            - 'null'
          enum:
            - DAILY
            - WEEKLY
            - MONTHLY
        trigger:
          type: string
          enum:
            - SCHEDULED
            - MANUAL
        definition:
          type: object
          properties:
            name:
              type: string
            description:
              type:
                - string
                - 'null'
            agentId:
              type:
                - string
                - 'null'
              format: uuid
            agentName:
              type:
                - string
                - 'null'
            filters:
              type: array
              items:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                      - METRIC_PROPERTY
                      - CALL_PROPERTY
                      - AGENT_PROPERTY
                      - CALL_ID
                      - MODALITY
                      - DATASET
                      - METRIC_VALUE
                    description: >-
                      What the filter narrows on. GET /v1/analytics/schema lists
                      each type.
                  property:
                    type: string
                    description: >-
                      The property to compare. Required for CALL_PROPERTY and
                      METRIC_PROPERTY; may be omitted for AGENT_PROPERTY,
                      DATASET, MODALITY and CALL_ID.
                  operator:
                    type: string
                    enum:
                      - EQUALS
                      - NOT_EQUALS
                      - GREATER_THAN
                      - GREATER_THAN_OR_EQUAL_TO
                      - LESS_THAN
                      - LESS_THAN_OR_EQUAL_TO
                      - CONTAINS
                      - STARTS_WITH
                      - IS_SET
                      - IS_NOT_SET
                    description: >-
                      Defaults to EQUALS. IS_SET / IS_NOT_SET (CALL_PROPERTY
                      only) keep conversations where the property is set,
                      whatever the value, or missing (never sent, sent as null,
                      or removed); they take no value.
                  value:
                    anyOf:
                      - type: string
                      - type: number
                      - type: boolean
                    description: >-
                      The value to compare against (an agent id, "call" /
                      "chat", a property value). Required except with IS_SET /
                      IS_NOT_SET.
                required:
                  - type
            targets:
              type: array
              items:
                type: object
                properties:
                  metric:
                    type: string
                    minLength: 1
                    description: The metric's slug (e.g. `task_completion`) or id.
                  aggregation:
                    type: string
                    enum:
                      - PASS_RATE
                      - AVG
                      - MEDIAN
                      - PERCENTILE
                      - MIN
                      - MAX
                    description: >-
                      Defaults to PASS_RATE for thresholds and booleans, AVG for
                      anything numeric.
                  percentile:
                    type: integer
                    minimum: 1
                    maximum: 99
                    description: Required with PERCENTILE, e.g. 95.
                  passOperator:
                    type: string
                    enum:
                      - EQUALS
                      - NOT_EQUALS
                      - GREATER_THAN
                      - GREATER_THAN_OR_EQUAL_TO
                      - LESS_THAN
                      - LESS_THAN_OR_EQUAL_TO
                    description: >-
                      PASS_RATE on a metric that isn't a threshold: the per-call
                      condition a call passes on.
                  passValue:
                    anyOf:
                      - type: string
                      - type: number
                      - type: boolean
                  comparator:
                    type: string
                    enum:
                      - AT_LEAST
                      - AT_MOST
                    description: >-
                      AT_LEAST (default for PASS_RATE) or AT_MOST (default for
                      every other aggregation).
                  value:
                    type: number
                    description: >-
                      The bar, in display units. A PASS_RATE bar is a
                      percentage, 0-100.
                  label:
                    type: string
                    minLength: 1
                    maxLength: 120
                    description: Shown instead of the metric's name.
                required:
                  - metric
                  - value
            dashboardId:
              type:
                - string
                - 'null'
              format: uuid
            includeTranscriptExcerpts:
              type: boolean
          required:
            - name
            - description
            - agentId
            - agentName
            - filters
            - targets
            - dashboardId
            - includeTranscriptExcerpts
        status:
          type: string
          enum:
            - PENDING
            - GENERATING
            - READY
            - FAILED
        document:
          type:
            - object
            - 'null'
          properties:
            version:
              type: number
              const: 1
            generatedAtIso:
              type: string
            model:
              type: string
            liveReportId:
              type:
                - string
                - 'null'
            headline:
              type: object
              properties:
                reportName:
                  type: string
                periodLabel:
                  type: string
                periodStartIso:
                  type: string
                periodEndIso:
                  type: string
                timezone:
                  type: string
                cadence:
                  type:
                    - string
                    - 'null'
                  enum:
                    - DAILY
                    - WEEKLY
                    - MONTHLY
                agentName:
                  type:
                    - string
                    - 'null'
                verdict:
                  type: string
                  enum:
                    - ON_TARGET
                    - OFF_TARGET
                    - NO_TARGETS
                    - NO_DATA
                verdictProse:
                  type: string
                statTiles:
                  type: array
                  items:
                    type: object
                    properties:
                      label:
                        type: string
                      value:
                        type: string
                      sub:
                        type:
                          - string
                          - 'null'
                      deltaDirection:
                        type:
                          - string
                          - 'null'
                        enum:
                          - POSITIVE
                          - NEGATIVE
                          - NEUTRAL
                    required:
                      - label
                      - value
                      - sub
                      - deltaDirection
              required:
                - reportName
                - periodLabel
                - periodStartIso
                - periodEndIso
                - timezone
                - cadence
                - agentName
                - verdict
                - verdictProse
                - statTiles
            executiveSummary:
              type: object
              properties:
                paragraphs:
                  type: array
                  items:
                    type: string
                sections:
                  type: array
                  items:
                    type: object
                    properties:
                      heading:
                        type:
                          - string
                          - 'null'
                      body:
                        type: string
                    required:
                      - heading
                      - body
                keyFindings:
                  type: array
                  items:
                    type: object
                    properties:
                      title:
                        type: string
                      body:
                        type: string
                      calls:
                        type: array
                        items:
                          type: object
                          properties:
                            conversationId:
                              type: string
                            callId:
                              type:
                                - string
                                - 'null'
                            personaName:
                              type:
                                - string
                                - 'null'
                            cueMs:
                              type:
                                - integer
                                - 'null'
                              default: null
                          required:
                            - conversationId
                            - callId
                            - personaName
                            - cueMs
                    required:
                      - title
                      - body
              required:
                - paragraphs
                - keyFindings
            targets:
              type: array
              items:
                type: object
                properties:
                  key:
                    type: string
                  label:
                    type: string
                  metricName:
                    type: string
                  metricSlug:
                    type: string
                  metricDefinitionId:
                    type:
                      - string
                      - 'null'
                  aggregation:
                    type: string
                    enum:
                      - PASS_RATE
                      - AVG
                      - MEDIAN
                      - PERCENTILE
                      - MIN
                      - MAX
                  percentile:
                    type:
                      - integer
                      - 'null'
                  comparator:
                    type: string
                    enum:
                      - AT_LEAST
                      - AT_MOST
                  unit:
                    type: string
                    enum:
                      - PERCENT
                      - VALUE
                  targetValue:
                    type: number
                  targetLabel:
                    type: string
                  actual:
                    type:
                      - number
                      - 'null'
                  actualLabel:
                    type:
                      - string
                      - 'null'
                  previous:
                    type:
                      - number
                      - 'null'
                  previousLabel:
                    type:
                      - string
                      - 'null'
                  deltaLabel:
                    type:
                      - string
                      - 'null'
                  deltaDirection:
                    type:
                      - string
                      - 'null'
                    enum:
                      - POSITIVE
                      - NEGATIVE
                      - NEUTRAL
                  sampleSize:
                    type: integer
                  status:
                    type: string
                    enum:
                      - MET
                      - MISSED
                      - NO_DATA
                  lifecycle:
                    type:
                      - string
                      - 'null'
                    enum:
                      - NEW_MISS
                      - STILL_MISSED
                      - RECOVERED
                      - HOLDING
                  failingConversationCount:
                    type:
                      - integer
                      - 'null'
                  series:
                    type: array
                    items:
                      type: object
                      properties:
                        date:
                          type: string
                        value:
                          type:
                            - number
                            - 'null'
                        sampleSize:
                          type:
                            - integer
                            - 'null'
                      required:
                        - date
                        - value
                        - sampleSize
                  error:
                    type:
                      - string
                      - 'null'
                required:
                  - key
                  - label
                  - metricName
                  - metricSlug
                  - metricDefinitionId
                  - aggregation
                  - percentile
                  - comparator
                  - unit
                  - targetValue
                  - targetLabel
                  - actual
                  - actualLabel
                  - previous
                  - previousLabel
                  - deltaLabel
                  - deltaDirection
                  - sampleSize
                  - status
                  - lifecycle
                  - failingConversationCount
                  - series
                  - error
            checks:
              type: array
              items:
                type: object
                properties:
                  metricDefinitionId:
                    type: string
                  metricSlug:
                    type: string
                  checkName:
                    type: string
                  passRatePct:
                    type:
                      - number
                      - 'null'
                  previousPassRatePct:
                    type:
                      - number
                      - 'null'
                  deltaPts:
                    type:
                      - number
                      - 'null'
                  evaluatedCount:
                    type: integer
                  failedCount:
                    type: integer
                  comparable:
                    type: boolean
                  isTarget:
                    type: boolean
                required:
                  - metricDefinitionId
                  - metricSlug
                  - checkName
                  - passRatePct
                  - previousPassRatePct
                  - deltaPts
                  - evaluatedCount
                  - failedCount
                  - comparable
                  - isTarget
            volume:
              type: object
              properties:
                conversationCount:
                  type: integer
                previousConversationCount:
                  type:
                    - integer
                    - 'null'
                deltaPct:
                  type:
                    - number
                    - 'null'
                series:
                  type: array
                  items:
                    type: object
                    properties:
                      date:
                        type: string
                      value:
                        type:
                          - number
                          - 'null'
                      sampleSize:
                        type:
                          - integer
                          - 'null'
                    required:
                      - date
                      - value
                      - sampleSize
                endings:
                  type: array
                  items:
                    type: object
                    properties:
                      value:
                        type: string
                      label:
                        type: string
                      count:
                        type: integer
                      sharePct:
                        type: number
                    required:
                      - value
                      - label
                      - count
                      - sharePct
              required:
                - conversationCount
                - previousConversationCount
                - deltaPct
                - series
                - endings
            agents:
              type: array
              items:
                type: object
                properties:
                  agentId:
                    type: string
                  agentName:
                    type: string
                  conversationCount:
                    type: integer
                  sharePct:
                    type: number
                  targets:
                    type: array
                    items:
                      type: object
                      properties:
                        key:
                          type: string
                        actual:
                          type:
                            - number
                            - 'null'
                        actualLabel:
                          type:
                            - string
                            - 'null'
                        status:
                          type: string
                          enum:
                            - MET
                            - MISSED
                            - NO_DATA
                      required:
                        - key
                        - actual
                        - actualLabel
                        - status
                required:
                  - agentId
                  - agentName
                  - conversationCount
                  - sharePct
                  - targets
            themes:
              type: array
              items:
                type: object
                properties:
                  slug:
                    type: string
                  title:
                    type: string
                  severity:
                    type: string
                    enum:
                      - HIGH
                      - MEDIUM
                      - LOW
                  impact:
                    type:
                      - string
                      - 'null'
                    enum:
                      - CRITICAL
                      - HIGH
                      - MEDIUM
                      - LOW
                    default: null
                  impactReason:
                    type:
                      - string
                      - 'null'
                    default: null
                  prevalence:
                    type:
                      - string
                      - 'null'
                    enum:
                      - WIDESPREAD
                      - RECURRING
                      - ISOLATED
                    default: null
                  flaggedForImpact:
                    type: boolean
                    default: false
                  lifecycle:
                    type:
                      - string
                      - 'null'
                    enum:
                      - NEW
                      - PERSISTENT
                      - IMPROVING
                      - FIXED
                  affectedConversationCount:
                    type: integer
                  totalConversationCount:
                    type: integer
                  checkNames:
                    type: array
                    items:
                      type: string
                  metricDefinitionIds:
                    type: array
                    items:
                      type: string
                  memberCalls:
                    type: array
                    items:
                      type: object
                      properties:
                        conversationId:
                          type: string
                        callId:
                          type:
                            - string
                            - 'null'
                        personaName:
                          type:
                            - string
                            - 'null'
                        cueMs:
                          type:
                            - integer
                            - 'null'
                          default: null
                      required:
                        - conversationId
                        - callId
                        - personaName
                        - cueMs
                  rootCauseChannel:
                    type:
                      - string
                      - 'null'
                    enum:
                      - PROMPT
                      - VOICE_CONFIG
                      - STT
                      - SPEECH_MODEL
                      - LLM_MODEL
                      - INFRA
                      - EXTERNAL
                  analysis:
                    type: string
                  memberConversationIds:
                    type: array
                    items:
                      type: string
                  excerpts:
                    type: array
                    items:
                      type: object
                      properties:
                        conversationId:
                          type: string
                        callId:
                          type:
                            - string
                            - 'null'
                        personaName:
                          type:
                            - string
                            - 'null'
                        scenarioName:
                          type:
                            - string
                            - 'null'
                        caption:
                          type:
                            - string
                            - 'null'
                        turns:
                          type: array
                          items:
                            type: object
                            properties:
                              role:
                                type: string
                                enum:
                                  - AGENT
                                  - CUSTOMER
                                  - SIMULATED_CUSTOMER
                                  - BACKGROUND_SPEAKER
                              offsetMs:
                                type:
                                  - integer
                                  - 'null'
                              text:
                                type: string
                              flagged:
                                type: boolean
                              flagNote:
                                type:
                                  - string
                                  - 'null'
                            required:
                              - role
                              - offsetMs
                              - text
                              - flagged
                              - flagNote
                      required:
                        - conversationId
                        - callId
                        - personaName
                        - scenarioName
                        - caption
                        - turns
                  collectorQuote:
                    type:
                      - object
                      - 'null'
                    properties:
                      conversationId:
                        type: string
                      metricName:
                        type: string
                      quote:
                        type: string
                    required:
                      - conversationId
                      - metricName
                      - quote
                  estimatedAffectedConversationCount:
                    type:
                      - integer
                      - 'null'
                  issue:
                    type:
                      - object
                      - 'null'
                    properties:
                      id:
                        type: string
                      title:
                        type: string
                      status:
                        type: string
                      firstSeenAtIso:
                        type:
                          - string
                          - 'null'
                    required:
                      - id
                      - title
                      - status
                      - firstSeenAtIso
                required:
                  - slug
                  - title
                  - severity
                  - impact
                  - impactReason
                  - prevalence
                  - flaggedForImpact
                  - lifecycle
                  - affectedConversationCount
                  - totalConversationCount
                  - checkNames
                  - metricDefinitionIds
                  - rootCauseChannel
                  - analysis
                  - memberConversationIds
                  - excerpts
                  - collectorQuote
                  - estimatedAffectedConversationCount
                  - issue
            recommendations:
              type: array
              items:
                type: object
                properties:
                  order:
                    type: integer
                  title:
                    type: string
                  body:
                    type: string
                  source:
                    type: string
                    enum:
                      - PROMPT_OPTIMIZER
                      - DEBRIEF
                  channel:
                    type:
                      - string
                      - 'null'
                    enum:
                      - PROMPT
                      - VOICE_CONFIG
                      - STT
                      - SPEECH_MODEL
                      - LLM_MODEL
                      - INFRA
                      - EXTERNAL
                  severity:
                    type:
                      - string
                      - 'null'
                    enum:
                      - HIGH
                      - MEDIUM
                      - LOW
                  promptOptimizationFindingId:
                    type:
                      - string
                      - 'null'
                  beforeText:
                    type:
                      - string
                      - 'null'
                  afterText:
                    type:
                      - string
                      - 'null'
                  themeSlugs:
                    type: array
                    items:
                      type: string
                required:
                  - order
                  - title
                  - body
                  - source
                  - channel
                  - severity
                  - promptOptimizationFindingId
                  - beforeText
                  - afterText
                  - themeSlugs
            charts:
              type: array
              items:
                type: object
                properties:
                  name:
                    type: string
                  description:
                    type:
                      - string
                      - 'null'
                  display:
                    type: string
                    enum:
                      - LINE
                      - NUMBER
                      - RADAR
                      - STACKED_BAR
                      - TABLE
                  interval:
                    type: string
                    enum:
                      - HOUR
                      - DAY
                      - WEEK
                      - MONTH
                  series:
                    type: array
                    items:
                      type: object
                      properties:
                        measureIndex:
                          type: integer
                        type:
                          type: string
                          enum:
                            - METRIC
                            - CONVERSATION
                            - UPTIME
                        metric:
                          type:
                            - string
                            - 'null'
                        aggregation:
                          type: string
                          enum:
                            - COUNT
                            - AVG
                            - MIN
                            - MAX
                            - SUM
                            - MEDIAN
                            - PERCENTILE
                            - PASS_RATE
                        breakdownValue:
                          type:
                            - string
                            - 'null'
                        comparisonGroup:
                          type:
                            - string
                            - 'null'
                        value:
                          type: number
                        sampleSize:
                          type:
                            - number
                            - 'null'
                        comparisonValue:
                          type:
                            - number
                            - 'null'
                        percentageOfBaseline:
                          type:
                            - number
                            - 'null'
                        buckets:
                          type: array
                          items:
                            type: object
                            properties:
                              date:
                                type: string
                              value:
                                type: number
                              passed:
                                type: number
                              sampleSize:
                                type: number
                              comparisonDate:
                                type: string
                              comparisonValue:
                                type: number
                              percentageOfBaseline:
                                type: number
                            required:
                              - date
                              - value
                      required:
                        - measureIndex
                        - type
                        - metric
                        - aggregation
                        - breakdownValue
                        - comparisonGroup
                        - value
                        - sampleSize
                        - comparisonValue
                        - percentageOfBaseline
                        - buckets
                  omittedSeries:
                    type: integer
                  blocked:
                    type: boolean
                  error:
                    type:
                      - string
                      - 'null'
                required:
                  - name
                  - description
                  - display
                  - interval
                  - series
                  - omittedSeries
                  - blocked
                  - error
            evidence:
              type: object
              properties:
                failingConversationCount:
                  type: integer
                readConversationCount:
                  type: integer
                sampled:
                  type: boolean
                failingCountIsLowerBound:
                  type: boolean
                  default: false
              required:
                - failingConversationCount
                - readConversationCount
                - sampled
                - failingCountIsLowerBound
            appendix:
              type: object
              properties:
                methodology:
                  type: string
                notes:
                  type: array
                  items:
                    type: string
              required:
                - methodology
                - notes
          required:
            - version
            - generatedAtIso
            - model
            - liveReportId
            - headline
            - executiveSummary
            - targets
            - checks
            - volume
            - agents
            - themes
            - recommendations
            - charts
            - evidence
            - appendix
        errorMessage:
          type:
            - string
            - 'null'
        announcedAt:
          type:
            - string
            - 'null'
        completedAt:
          type:
            - string
            - 'null'
        createdAt:
          type: string
      required:
        - id
        - projectId
        - liveReportId
        - periodStart
        - periodEnd
        - timezone
        - cadence
        - trigger
        - definition
        - status
        - document
        - errorMessage
        - announcedAt
        - completedAt
        - createdAt
      description: >-
        One written report over one period. `document` is null until `status` is
        READY; every number in it comes from the analytics engine (the same
        reads GET /v1/dashboard/{dashboardId}/data makes over the same window
        and filters).
    ErrorResponse:
      type: object
      properties:
        type:
          type: string
          enum:
            - validation
            - authentication
            - forbidden
            - not_found
            - conflict
            - payment_required
            - rate_limit
            - internal
          description: The error type category
          examples:
            - validation
            - authentication
        code:
          type: string
          description: Machine-readable error code identifier
          examples:
            - invalid_parameter
            - missing_required_field
            - unauthorized
        message:
          type: string
          description: Human-readable error message
          examples:
            - The request was invalid
            - Authentication required
        param:
          type: string
          description: The parameter that caused the error (if applicable)
          examples:
            - email
            - user_id
        details:
          description: Additional error context information
      required:
        - type
        - code
        - message
  securitySchemes:
    Bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT

````

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