OpenObserve Reports API
The Reports API from OpenObserve — 9 operation(s) for reports.
The Reports API from OpenObserve — 9 operation(s) for reports.
openapi: 3.1.0
info:
title: openobserve Actions Reports API
description: OpenObserve API documents [https://openobserve.ai/docs/](https://openobserve.ai/docs/)
contact:
name: OpenObserve
url: https://openobserve.ai/
email: hello@zinclabs.io
license:
name: AGPL-3.0
identifier: AGPL-3.0
version: 0.90.0
tags:
- name: Reports
paths:
/api/v2/{org_id}/reports:
get:
tags:
- Reports
summary: List dashboard reports (v2)
description: Lists reports for the organization, optionally filtered by folder.
operationId: ListReportsV2
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
- name: folder
in: query
description: Folder ID filter
required: false
schema:
type: string
- name: dashboard_id
in: query
description: Dashboard ID filter
required: false
schema:
type: string
- name: cache
in: query
description: Filter destination-less (cache) reports
required: false
schema:
type: boolean
responses:
'200':
description: ''
content:
application/json:
schema:
type: array
items:
type: object
required:
- orgId
- dashboards
- destinations
- owner
- lastEditedBy
properties:
createdAt:
type: string
format: date-time
dashboards:
type: array
items:
$ref: '#/components/schemas/ReportDashboard'
description:
type: string
destinations:
type: array
items:
$ref: '#/components/schemas/ReportDestination'
enabled:
type: boolean
frequency:
$ref: '#/components/schemas/ReportFrequency'
description: Frequency of report generation. E.g. - Weekly.
imagePreview:
type: boolean
description: 'When `true` and the report type is PDF, a PNG screenshot is also captured and embedded
inline in the email body alongside the PDF attachment.'
lastEditedBy:
type: string
message:
type: string
description: Message to include in the email
name:
type: string
orgId:
type: string
owner:
type: string
start:
type: integer
format: int64
description: Start time of report generation in UNIX microseconds.
timezone:
type: string
timezoneOffset:
type: integer
format: int32
description: Fixed timezone offset in minutes
title:
type: string
updatedAt:
type: string
format: date-time
security:
- Authorization: []
x-o2-ratelimit:
module: Reports
operation: list
post:
tags:
- Reports
summary: Create dashboard report (v2)
description: Creates a new automated dashboard report in the specified folder. Pass `?folder=<folder_id>` to place the report in a non-default folder.
operationId: CreateReportV2
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
- name: folder
in: query
description: Folder ID (defaults to 'default')
required: false
schema:
type: string
requestBody:
description: Report details
content:
application/json:
schema:
type: object
required:
- orgId
- dashboards
- destinations
- owner
- lastEditedBy
properties:
createdAt:
type: string
format: date-time
dashboards:
type: array
items:
$ref: '#/components/schemas/ReportDashboard'
description:
type: string
destinations:
type: array
items:
$ref: '#/components/schemas/ReportDestination'
enabled:
type: boolean
frequency:
$ref: '#/components/schemas/ReportFrequency'
description: Frequency of report generation. E.g. - Weekly.
imagePreview:
type: boolean
description: 'When `true` and the report type is PDF, a PNG screenshot is also captured and embedded
inline in the email body alongside the PDF attachment.'
lastEditedBy:
type: string
message:
type: string
description: Message to include in the email
name:
type: string
orgId:
type: string
owner:
type: string
start:
type: integer
format: int64
description: Start time of report generation in UNIX microseconds.
timezone:
type: string
timezoneOffset:
type: integer
format: int32
description: Fixed timezone offset in minutes
title:
type: string
updatedAt:
type: string
format: date-time
required: true
responses:
'200':
description: Report created
content:
application/json:
schema:
default: null
'500':
description: Internal Server Error
content:
application/json:
schema:
default: null
security:
- Authorization: []
x-o2-ratelimit:
module: Reports
operation: create
/api/v2/{org_id}/reports/bulk:
delete:
tags:
- Reports
summary: Delete multiple dashboard reports by ID (v2)
operationId: DeleteReportBulkV2
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
requestBody:
description: Report IDs (KSUIDs)
content:
application/json:
schema:
$ref: '#/components/schemas/BulkDeleteRequest'
required: true
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/BulkDeleteResponse'
security:
- Authorization: []
x-o2-ratelimit:
module: Reports
operation: delete
x-o2-mcp:
enabled: false
/api/v2/{org_id}/reports/move:
patch:
tags:
- Reports
summary: Move reports between folders (v2)
operationId: MoveReports
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
requestBody:
description: Report IDs and destination folder
content:
application/json:
schema:
type: object
required:
- report_ids
- dst_folder_id
properties:
dst_folder_id:
type: string
report_ids:
type: array
items:
type: string
required: true
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
'404':
description: Not found
content:
application/json:
schema:
default: null
security:
- Authorization: []
x-o2-ratelimit:
module: Reports
operation: update
/api/v2/{org_id}/reports/{report_id}:
get:
tags:
- Reports
summary: Get dashboard report by ID (v2)
operationId: GetReportV2
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
- name: report_id
in: path
description: Report ID (KSUID)
required: true
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
required:
- orgId
- dashboards
- destinations
- owner
- lastEditedBy
properties:
createdAt:
type: string
format: date-time
dashboards:
type: array
items:
$ref: '#/components/schemas/ReportDashboard'
description:
type: string
destinations:
type: array
items:
$ref: '#/components/schemas/ReportDestination'
enabled:
type: boolean
frequency:
$ref: '#/components/schemas/ReportFrequency'
description: Frequency of report generation. E.g. - Weekly.
imagePreview:
type: boolean
description: 'When `true` and the report type is PDF, a PNG screenshot is also captured and embedded
inline in the email body alongside the PDF attachment.'
lastEditedBy:
type: string
message:
type: string
description: Message to include in the email
name:
type: string
orgId:
type: string
owner:
type: string
start:
type: integer
format: int64
description: Start time of report generation in UNIX microseconds.
timezone:
type: string
timezoneOffset:
type: integer
format: int32
description: Fixed timezone offset in minutes
title:
type: string
updatedAt:
type: string
format: date-time
'404':
description: Not found
content:
application/json:
schema:
default: null
security:
- Authorization: []
x-o2-ratelimit:
module: Reports
operation: get
put:
tags:
- Reports
summary: Update dashboard report by ID (v2)
description: Updates an existing report. Pass `?folder=<folder_id>` to move the report to a different folder at the same time.
operationId: UpdateReportV2
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
- name: report_id
in: path
description: Report ID (KSUID)
required: true
schema:
type: string
- name: folder
in: query
description: Move to this folder ID
required: false
schema:
type: string
requestBody:
description: Report details
content:
application/json:
schema:
type: object
required:
- orgId
- dashboards
- destinations
- owner
- lastEditedBy
properties:
createdAt:
type: string
format: date-time
dashboards:
type: array
items:
$ref: '#/components/schemas/ReportDashboard'
description:
type: string
destinations:
type: array
items:
$ref: '#/components/schemas/ReportDestination'
enabled:
type: boolean
frequency:
$ref: '#/components/schemas/ReportFrequency'
description: Frequency of report generation. E.g. - Weekly.
imagePreview:
type: boolean
description: 'When `true` and the report type is PDF, a PNG screenshot is also captured and embedded
inline in the email body alongside the PDF attachment.'
lastEditedBy:
type: string
message:
type: string
description: Message to include in the email
name:
type: string
orgId:
type: string
owner:
type: string
start:
type: integer
format: int64
description: Start time of report generation in UNIX microseconds.
timezone:
type: string
timezoneOffset:
type: integer
format: int32
description: Fixed timezone offset in minutes
title:
type: string
updatedAt:
type: string
format: date-time
required: true
responses:
'200':
description: Updated
content:
application/json:
schema:
default: null
'404':
description: Not found
content:
application/json:
schema:
default: null
security:
- Authorization: []
x-o2-ratelimit:
module: Reports
operation: update
delete:
tags:
- Reports
summary: Delete dashboard report by ID (v2)
operationId: DeleteReportV2
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
- name: report_id
in: path
description: Report ID (KSUID)
required: true
schema:
type: string
responses:
'200':
description: Deleted
content:
application/json:
schema:
default: null
'404':
description: Not found
content:
application/json:
schema:
default: null
security:
- Authorization: []
x-o2-ratelimit:
module: Reports
operation: delete
/api/v2/{org_id}/reports/{report_id}/enable:
patch:
tags:
- Reports
summary: Enable or disable a report by ID (v2)
operationId: EnableReportV2
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
- name: report_id
in: path
description: Report ID (KSUID)
required: true
schema:
type: string
- name: value
in: query
description: true to enable, false to disable
required: true
schema:
type: boolean
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
'404':
description: Not found
content:
application/json:
schema:
default: null
security:
- Authorization: []
x-o2-ratelimit:
module: Reports
operation: update
/api/v2/{org_id}/reports/{report_id}/trigger:
put:
tags:
- Reports
summary: Manually trigger a report by ID (v2)
operationId: TriggerReportV2
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
- name: report_id
in: path
description: Report ID (KSUID)
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
'404':
description: Not found
content:
application/json:
schema:
default: null
security:
- Authorization: []
x-o2-mcp:
enabled: false
/api/{org_id}/reports:
get:
tags:
- Reports
summary: List dashboard reports
description: Retrieves a list of all dashboard reports configured for the organization. Optionally filter by folder or dashboard to get specific report subsets. Returns report metadata including schedules, status, destinations, and execution history to help administrators manage automated reporting and monitor delivery performance.
operationId: ListReports
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
type: array
items:
type: object
required:
- orgId
- dashboards
- destinations
- owner
- lastEditedBy
properties:
createdAt:
type: string
format: date-time
dashboards:
type: array
items:
$ref: '#/components/schemas/ReportDashboard'
description:
type: string
destinations:
type: array
items:
$ref: '#/components/schemas/ReportDestination'
enabled:
type: boolean
frequency:
$ref: '#/components/schemas/ReportFrequency'
description: Frequency of report generation. E.g. - Weekly.
imagePreview:
type: boolean
description: 'When `true` and the report type is PDF, a PNG screenshot is also captured and embedded
inline in the email body alongside the PDF attachment.'
lastEditedBy:
type: string
message:
type: string
description: Message to include in the email
name:
type: string
orgId:
type: string
owner:
type: string
start:
type: integer
format: int64
description: Start time of report generation in UNIX microseconds.
timezone:
type: string
timezoneOffset:
type: integer
format: int32
description: Fixed timezone offset in minutes
title:
type: string
updatedAt:
type: string
format: date-time
security:
- Authorization: []
x-o2-ratelimit:
module: Reports
operation: list
x-o2-mcp:
description: List all reports
category: dashboards
summary_fields:
- name
- description
- enabled
- folder_name
post:
tags:
- Reports
summary: Create dashboard report
description: Creates a new automated dashboard report configuration. Reports can be scheduled to automatically generate and distribute dashboard snapshots via email or other notification channels. Includes support for custom time ranges, recipient lists, delivery schedules, and output formats to keep stakeholders informed of key metrics and trends.
operationId: CreateReport
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
requestBody:
description: Report details
content:
application/json:
schema:
type: object
required:
- orgId
- dashboards
- destinations
- owner
- lastEditedBy
properties:
createdAt:
type: string
format: date-time
dashboards:
type: array
items:
$ref: '#/components/schemas/ReportDashboard'
description:
type: string
destinations:
type: array
items:
$ref: '#/components/schemas/ReportDestination'
enabled:
type: boolean
frequency:
$ref: '#/components/schemas/ReportFrequency'
description: Frequency of report generation. E.g. - Weekly.
imagePreview:
type: boolean
description: 'When `true` and the report type is PDF, a PNG screenshot is also captured and embedded
inline in the email body alongside the PDF attachment.'
lastEditedBy:
type: string
message:
type: string
description: Message to include in the email
name:
type: string
orgId:
type: string
owner:
type: string
start:
type: integer
format: int64
description: Start time of report generation in UNIX microseconds.
timezone:
type: string
timezoneOffset:
type: integer
format: int32
description: Fixed timezone offset in minutes
title:
type: string
updatedAt:
type: string
format: date-time
example:
title: Network Traffic Overview
description: Traffic patterns and network performance of the infrastructure
required: true
responses:
'201':
description: Report created
content:
application/json:
schema:
default: null
'500':
description: Internal Server Error
content:
application/json:
schema:
default: null
security:
- Authorization: []
x-o2-mcp:
description: Create a scheduled report
category: dashboards
x-o2-ratelimit:
module: Reports
operation: create
/api/{org_id}/reports/{name}:
get:
tags:
- Reports
summary: Get dashboard report
description: Retrieves the complete configuration and details for a specific dashboard report. Returns report parameters including schedule settings, dashboard selection, recipient lists, delivery options, and execution status. Used for reviewing existing report configurations before making modifications or troubleshooting delivery issues.
operationId: GetReport
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
- name: name
in: path
description: Report name
required: true
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
required:
- orgId
- dashboards
- destinations
- owner
- lastEditedBy
properties:
createdAt:
type: string
format: date-time
dashboards:
type: array
items:
$ref: '#/components/schemas/ReportDashboard'
description:
type: string
destinations:
type: array
items:
$ref: '#/components/schemas/ReportDestination'
enabled:
type: boolean
frequency:
$ref: '#/components/schemas/ReportFrequency'
description: Frequency of report generation. E.g. - Weekly.
imagePreview:
type: boolean
description: 'When `true` and the report type is PDF, a PNG screenshot is also captured and embedded
inline in the email body alongside the PDF attachment.'
lastEditedBy:
type: string
message:
type: string
description: Message to include in the email
name:
type: string
orgId:
type: string
owner:
type: string
start:
type: integer
format: int64
description: Start time of report generation in UNIX microseconds.
timezone:
type: string
timezoneOffset:
type: integer
format: int32
description: Fixed timezone offset in minutes
title:
type: string
updatedAt:
type: string
format: date-time
'404':
description: Report not found
content:
application/json:
schema:
default: null
security:
- Authorization: []
x-o2-mcp:
description: Get report details
category: dashboards
x-o2-ratelimit:
module: Reports
operation: get
put:
tags:
- Reports
summary: Update dashboard report
description: Updates an existing dashboard report configuration. Allows modification of report parameters including schedule, recipients, dashboard selection, time ranges, and delivery options. Changes take effect on the next scheduled execution, ensuring report distribution continues with updated settings and content selection.
operationId: UpdateReport
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
- name: name
in: path
description: Report name
required: true
schema:
type: string
requestBody:
description: Report details
content:
application/json:
schema:
type: object
required:
- orgId
- dashboards
- destinations
- owner
- lastEditedBy
properties:
createdAt:
type: string
format: date-time
dashboards:
type: array
items:
$ref: '#/components/schemas/ReportDashboard'
description:
type: string
destinations:
type: array
items:
$ref: '#/components/schemas/ReportDestination'
enabled:
type: boolean
frequency:
$ref: '#/components/schemas/ReportFrequency'
description: Frequency of report generation. E.g. - Weekly.
imagePreview:
type: boolean
description: 'When `true` and the report type is PDF, a PNG screenshot is also captured and embedded
inline in the email body alongside the PDF attachment.'
lastEditedBy:
type: string
message:
type: string
description: Message to include in the email
name:
type: string
orgId:
type: string
owner:
type: string
start:
type: integer
format: int64
description: Start time of report generation in UNIX microseconds.
timezone:
type: string
timezoneOffset:
type: integer
format: int32
description: Fixed timezone offset in minutes
title:
type: string
updatedAt:
type: string
format: date-time
required: true
responses:
'200':
description: Report updated
content:
application/json:
schema:
default: null
'404':
description: Report not found
content:
application/json:
schema:
default: null
'500':
description: Failed to update the report
content:
application/json:
schema:
default: null
security:
- Authorization: []
x-o2-ratelimit:
module: Reports
operation: update
x-o2-mcp:
description: Update a report
category: dashboards
delete:
tags:
- Reports
summary: Delete dashboard report
description: Removes a dashboard report configuration from the organization. This action cancels any scheduled report deliveries and permanently removes the report configuration. Recipients will no longer receive automated report deliveries, and the report configuration cannot be recovered once deleted.
operationId: DeleteReport
parameters:
- name: org_id
in: path
description: Organization name
required: true
schema:
type: string
- name: name
in: path
description: Report name
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
default: null
'404':
descri
# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/openobserve/refs/heads/main/openapi/openobserve-reports-api-openapi.yml