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:
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 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.
The gridPos property describes the panel size and position in grid coordinates.
The grid has a negative gravity that moves panels up if there is empty space above a panel.
Usage of the fields is explained below:
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: