Dashboard API
Contents
GET /api/v3/grafana/render/?target=
Returns PNG image of a dashboard panel. To display any data on the graph you must include a ‘target’, you can append multiple targets to the request as follows: ?target=foo.bar.A&target=foo.bar.B
Parameters
target*
String
graphite query
from
String
Format: -<num>m|h|d|w|M|Y default: -6h
to
String
Format: now-<num>m|h|d|w|M|Y default: now
width
String
number measured in pixels default: 1000
height
String
number measured in pixels default: 500
style
String
Format: “light” | “dark ” default: dark
Curl Example:
Response:
<image data>
Bad Request Invalid form data
Unauthorized
Time Queries:
m= Minutesh= Hoursd= Daysw= WeeksM= MonthsY= Years
You can interact with your dashboard instance directly through Grafana's HTTP API
To use the Grafana API, you will need to create a new Grafana Service Account Token within the Grafana UI (Settings => Service Accounts => Add Service Account with Admin role => Generate Service Account Token).

Additional Considerations:
Since MetricFire now hosts Grafana v9.5, dashboard JSON templates must now be wrapped in the following object, in order to create/update dashboards programatically ("folderID": 0, maps to the default "General" folder, but any folderID can be specified):
In all below examples
<UID>refers to the URL subdomain of your hosted instance,uidrefers to the unique identifier of the related resource. Below are examples of requests made using the Grafana Dashboard HTTP API.
POST /api/dashboards/db
Creates a new dashboard or updates an existing dashboard
Example:
Bad Request Invalid JSON
Conflict Dashboard already exists
Example dashboard.json file:
GET /api/dashboards/uid/:uid
Returns a dashboard given the dashboard's uid
Content-Type
application/json
Authorization
Bearer <SERVICE-ACCOUNT-TOKEN>
Curl examples:
Response:
Bad Request No dashboard specified
Not Found Dashboard not found
DELETE /api/dashboards/uid/:uid
Deletes a dashboard given the dashboard slug.
Content-Type
application/json
Authorization
Bearer <SERVICE-ACCOUNT-TOKEN>
Example:
Response:
Bad Request No dashboard specified
Dashboard not found
GET /api/search
Returns a list of dashboards given a search query.
Content-Type
application/json
Authorization
Bearer <SERVICE-ACCOUNT-TOKEN>
Example:
Response:
Bad Request Invalid form data
POST /api/folders
Creates a new folder for dashboard organization.
Headers
Content-Type
application/json
Authorization
Bearer <SERVICE-ACCOUNT-TOKEN>
JSON Schema
title
string
name of new folder
Example:
Response:
Errors (invalid json, missing or invalid fields, etc
Folder already exists
Last updated
Was this helpful?