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

# Patch apiv1reports



## OpenAPI

````yaml https://www.amdital.com/openapi.json patch /api/v1/reports/{id}
openapi: 3.0.0
info:
  title: AmDital API
  description: >-
    AmDital enterprise business operating system API — generated directly from
    the live NestJS controllers and their Zod request/response schemas (see
    apps/api/src/openapi/generate.ts).
  version: 2.0.0
  contact: {}
servers:
  - url: https://api.amdital.com
    description: Production
  - url: http://localhost:8000
    description: Local development
security:
  - bearerAuth: []
tags:
  - name: Health
    description: Liveness/readiness probe. Unauthenticated.
  - name: AuthNext
    description: >-
      Live authentication surface — login, password verification, token refresh,
      session management, MFA, and admin credential resets.
      login/verify-password/refresh are public (the credential exchange itself);
      session/MFA routes require the bearer JWT they issue; admin/* routes are
      internal-key gated, server-to-server only.
  - name: Content
    description: >-
      Generic tenant-scoped CRUD over the 49 allowlisted content/config
      collections (see the `collection` path parameter enum) — the NestJS
      replacement for Payload REST on these collections; response shapes match
      Payload REST so existing consumers work unchanged.
  - name: Activity
    description: >-
      Activity logs and screenshot capture/scoring for the time-tracking desktop
      agent.
  - name: Ai
    description: AMI agents, prompts, and workflows — create, deploy/activate, and manage.
  - name: Calendar
    description: Workspace calendars and calendar events.
  - name: Clients
    description: Client organizations and client contacts.
  - name: Content Admin
    description: >-
      Public reads for roadmap items, testimonials, feature ideas, and
      blog/survey content; write endpoints (create/update/remove, upvote, survey
      responses) require the `x-internal-key`/`x-api-key` server-to-server
      header — these writes are not for third-party API consumers.
  - name: Crm
    description: >-
      Companies, leads, deals, pipelines, products, sequences, sequence
      enrollments, custom field definitions, lead routing rules, and client
      portal tokens. Contacts are documented separately under the Clients tag.
  - name: Docs
    description: >-
      Tenant-internal wiki: doc categories and doc pages (distinct from the
      public docs-site content under Public Content).
  - name: Finance
    description: Invoices, payments, budgets, expenses, and purchase orders.
  - name: Goals
    description: Workspace goals/OKRs.
  - name: Hrms
    description: >-
      Employees, departments, roles, shifts, leave requests, performance
      reviews, payroll runs, compliance records, salary structures/revisions,
      bonuses, arrears, and the per-employee payroll activity feed.
  - name: Integrations
    description: Outbound webhooks and third-party integration tokens.
  - name: Lms
    description: >-
      LMS API is a placeholder — course/enrollment endpoints are not yet
      implemented. The one route below returns a hardcoded empty list.
  - name: Marketing
    description: Marketing campaigns, email templates, and marketing assets.
  - name: Public Content
    description: >-
      Fully public, unauthenticated docs/marketing content reads (doc
      categories, doc articles, changelog, FAQs) — paths intentionally match
      Payload REST exactly (no `/v1`, no auth) because apps/docs hardcodes these
      URLs.
  - name: Recruitment
    description: Job postings, applicants, and interviews.
  - name: Reports
    description: Saved report configurations/definitions.
  - name: Report Definitions
    description: >-
      Reusable saved report definitions (name/type/filter-definition/schedule)
      distinct from the one-off generated reports above — includes "run" to
      execute a definition and produce a new report_snapshots row.
  - name: Support
    description: Support channels and tickets, including ticket assignment.
  - name: Time
    description: Time entries/timers and timesheets, including submit/approve/reject.
  - name: Approvals
    description: >-
      Approval requests — read and decide only, by design (no
      create/update/delete).
  - name: Work
    description: Projects, tasks, sprints, chat channels/messages, and work files.
  - name: Mcp
    description: >-
      Model Context Protocol server — a public descriptor (GET) and the JSON-RPC
      2.0 endpoint (POST) authenticated by a workspace API key or auth-next JWT.
  - name: Mcp OAuth
    description: >-
      Consent screen backing (read/decide a pending MCP OAuth authorization) and
      the workspace's connected-AI-tool grants (list/revoke). Bearer JWT
      required.
  - name: Metrics
    description: >-
      Prometheus text-format scrape endpoint, authenticated by its own static
      scrape token (not a user JWT).
  - name: Internal
    description: >-
      Server-to-server endpoints for AmDital's own apps (trusted Origin + proxy
      secret). Not for third-party API consumers.
  - name: Mail Log
    description: Outbound email log (Settings → Email → Log) and test sends.
paths:
  /api/v1/reports/{id}:
    patch:
      tags:
        - Reports
      operationId: ReportsController_updateReport
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateReport'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                properties:
                  data:
                    $ref: '#/components/schemas/ReportResponse'
components:
  schemas:
    UpdateReport:
      type: object
      properties:
        reportType:
          type: string
          minLength: 1
        generatedBy:
          type: string
          format: uuid
        dateFrom:
          type: string
        dateTo:
          type: string
        filters:
          type: object
          additionalProperties:
            nullable: true
        data:
          type: object
          additionalProperties:
            nullable: true
          default: {}
        expiresAt:
          type: string
    ReportResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
        workspaceId:
          type: string
          format: uuid
        reportType:
          type: string
        generatedBy:
          type: string
          format: uuid
        dateFrom:
          type: string
          nullable: true
        dateTo:
          type: string
          nullable: true
        filters:
          type: object
          nullable: true
          additionalProperties:
            nullable: true
        data:
          type: object
          additionalProperties:
            nullable: true
        expiresAt:
          type: string
          nullable: true
        createdAt:
          type: string
      required:
        - id
        - workspaceId
        - reportType
        - generatedBy
        - dateFrom
        - dateTo
        - filters
        - data
        - expiresAt
        - createdAt
  securitySchemes:
    bearerAuth:
      scheme: bearer
      bearerFormat: JWT
      type: http

````

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