mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
77 lines
2.6 KiB
Markdown
77 lines
2.6 KiB
Markdown
+++
|
|
title = "Reporting API"
|
|
description = "Grafana Enterprise APIs"
|
|
keywords = ["grafana", "enterprise", "api", "reporting"]
|
|
aliases = ["/docs/grafana/latest/http_api/reporting/"]
|
|
+++
|
|
|
|
# Reporting API
|
|
|
|
This API allows you to interact programmatically with the [Reporting]({{< relref "../enterprise/reporting.md" >}}) feature.
|
|
|
|
> Reporting is only available in Grafana Enterprise. Read more about [Grafana Enterprise]({{< relref "../enterprise" >}}).
|
|
|
|
> If you have [Fine-grained access Control]({{< relref "../enterprise/access-control/_index.md" >}}) enabled, for some endpoints you would need to have relevant permissions.
|
|
Refer to specific resources to understand what permissions are required.
|
|
|
|
## Send a report
|
|
|
|
> Only available in Grafana Enterprise v7.0+.
|
|
|
|
> This API endpoint is experimental and may be deprecated in a future release. On deprecation, a migration strategy will be provided and the endpoint will remain functional until the next major release of Grafana.
|
|
|
|
`POST /api/reports/email`
|
|
|
|
Generate and send a report. This API waits for the report to be generated before returning. We recommend that you set the client's timeout to at least 60 seconds.
|
|
|
|
#### Required permissions
|
|
|
|
See note in the [introduction]({{< ref "#reporting-api" >}}) for an explanation.
|
|
|
|
Action | Scope
|
|
--- | --- |
|
|
reports:send | n/a
|
|
|
|
### Example request
|
|
|
|
```http
|
|
POST /api/reports/email HTTP/1.1
|
|
Accept: application/json
|
|
Content-Type: application/json
|
|
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
|
|
|
|
```
|
|
|
|
### JSON Body Schema
|
|
|
|
Field name | Data type | Description
|
|
---------- | ---- | -----------
|
|
id | string | ID of the report to send. It is the same as in the URL when editing a report, not to be confused with the ID of the dashboard. Required.
|
|
emails | string | Comma-separated list of emails to which to send the report to. Overrides the emails from the report. Required if **useEmailsFromReport** is not present.
|
|
useEmailsFromReport | boolean | Send the report to the emails specified in the report. Required if **emails** is not present.
|
|
|
|
### Example response
|
|
|
|
```http
|
|
HTTP/1.1 200 OK
|
|
Content-Type: application/json
|
|
Content-Length: 29
|
|
|
|
```
|
|
|
|
### Status Codes
|
|
|
|
Code | Description
|
|
---- | -----------
|
|
200 | Report was sent.
|
|
400 | Bad request (invalid json, missing content-type, missing or invalid fields, etc.).
|
|
401 | Authentication failed, refer to [Authentication API]({{< relref "../http_api/auth.md" >}}).
|
|
403 | User is authenticated but is not authorized to generate the report.
|
|
404 | Report not found.
|
|
500 | Unexpected error or server misconfiguration. Refer to server logs for more details.
|