Dashboard JSON Model
A dashboard in FojiSoft is represented by a JSON object, which stores metadata of its dashboard. Dashboard metadata includes dashboard properties, metadata from panels, template variables, panel queries, etc.
To view the JSON of a dashboard:
- Navigate to a dashboard.
- In the top navigation menu, click the Dashboard settings (gear) icon.
- Click JSON Model.
JSON fields
When a user creates a new dashboard, a new dashboard JSON object is initialized with the following fields:
Note: In the following JSON, id is shown as null which is the default value assigned to it until a dashboard is saved. Once a dashboard is saved, an integer value is assigned to the id field.
Each field in the dashboard JSON is explained below with its usage:
Panels
Panels are the building blocks of a dashboard. It consists of data source queries, type of graphs, aliases, etc. Panel JSON consists of an array of JSON objects, each representing a different panel. Most of the fields are common for all panels but some fields depend on the panel type. Following is an example of panel JSON of a text panel.
Panel size and position
The gridPos property describes the panel size and position in grid coordinates.
- w 1-24 (the width of the dashboard is divided into 24 columns)
- h In grid height units, each represents 30 pixels.
- x The x position, in same unit as w.
- y The y position, in same unit as h.
The grid has a negative gravity that moves panels up if there is empty space above a panel.
Timepicker
Usage of the fields is explained below:
templating
The templating field contains an array of template variables with their saved values along with some other metadata, for example:
Usage of the above-mentioned fields in the templating section is explained below: