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

# Update report statuses



## OpenAPI

````yaml post /v1/report/bulk-status-update
openapi: 3.0.0
info:
  title: Report APIs Specification
  description: Section for description
  version: '1.0'
  contact: {}
servers:
  - url: https://staging.api.us.aptlydone.com/report
  - url: https://staging.api.eu.aptlydone.com/report
  - url: https://api.us.aptlydone.com/report
  - url: https://api.eu.aptlydone.com/report
security: []
tags: []
paths:
  /v1/report/bulk-status-update:
    post:
      tags:
        - report
      summary: Update report statuses
      operationId: ReportController_bulkUpdateStatus_v1
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReportBulkStatusUpdateDto'
      responses:
        '201':
          description: Report statuses updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkStatusUpdateResponseDtoResponse'
      security:
        - accessToken: []
components:
  schemas:
    ReportBulkStatusUpdateDto:
      type: object
      properties:
        reportIds:
          description: Array of report IDs to update
          example:
            - 832211de-ea66-4005-b73d-d0e8deff96f2
            - b3dd6f41-4f35-4707-8db5-3a488c597a17
          type: array
          items:
            type: string
            format: uuid
        status:
          type: string
          description: >-
            New status value for all selected reports (required for UPDATE
            operation)
          enum:
            - PUBLISHED
            - ARCHIVED
            - DELETED
            - DRAFT
          example: PUBLISHED
        operation:
          default: UPDATE
          enum:
            - UPDATE
            - RESTORE
          type: string
          description: Operation type (update or restore)
          example: UPDATE
      required:
        - reportIds
    BulkStatusUpdateResponseDtoResponse:
      type: object
      properties:
        statusCode:
          type: number
          description: HTTP Status code
          example: 200
        timestamp:
          type: string
          description: Timestamp of the response
          example: '2026-01-08T06:33:03.221Z'
        message:
          type: string
          description: Response message
          example: Success
        data:
          description: Response data
          allOf:
            - $ref: '#/components/schemas/BulkStatusUpdateResponseDto'
      required:
        - statusCode
        - timestamp
        - message
        - data
    BulkStatusUpdateResponseDto:
      type: object
      properties:
        success:
          type: boolean
          description: Whether the operation was successful
          example: true
        updatedCount:
          type: number
          description: Number of reports that were successfully updated
          example: 5
        failedIds:
          description: IDs of reports that failed to update (if any)
          example:
            - 3699525e-aa89-4171-8685-3e80104fb745
            - 2ffc8ce9-6b3a-4d42-a6fe-fe632dfe920f
          nullable: true
          type: array
          items:
            type: string
      required:
        - success
        - updatedCount
  securitySchemes:
    accessToken:
      scheme: bearer
      bearerFormat: JWT
      type: http

````