"description":"The plugin.json file is required for all plugins. When Grafana starts, it scans the plugin folders and mounts every folder that contains a plugin.json file unless the folder contains a subfolder named dist. In that case, Grafana mounts the dist folder instead.",
"description":"The first part of the file name of the backend component executable. There can be multiple executables built for different operating system and architecture. Grafana will check for executables named `<executable>_<$GOOS>_<lower case $GOARCH><.exe for Windows>`, e.g. `plugin_linux_amd64`. Combination of $GOOS and $GOARCH can be found here: https://golang.org/doc/install/source#environment."
"description":"For data source plugins. There is a query options section in the plugin's query editor and these options can be turned on if needed.",
"additionalProperties":false,
"properties":{
"maxDataPoints":{
"type":"boolean",
"description":"For data source plugins. If the `max data points` option should be shown in the query options section in the query editor."
},
"minInterval":{
"type":"boolean",
"description":"For data source plugins. If the `min interval` option should be shown in the query options section in the query editor."
},
"cacheTimeout":{
"type":"boolean",
"description":"For data source plugins. If the `cache timeout` option should be shown in the query options section in the query editor."
}
}
},
"routes":{
"type":"array",
"description":"For data source plugins. Proxy routes used for plugin authentication and adding headers to HTTP requests made by the plugin. For more information, refer to [Authentication for data source plugins](https://grafana.com/docs/grafana/latest/developers/plugins/authentication/).",
"items":{
"type":"object",
"description":"For data source plugins. Proxy routes used for plugin authentication and adding headers to HTTP requests made by the plugin. For more information, refer to [Authentication for data source plugins](https://grafana.com/docs/grafana/latest/developers/plugins/authentication/).",
"additionalProperties":false,
"properties":{
"path":{
"type":"string",
"description":"For data source plugins. The route path that is replaced by the route URL field when proxying the call."
},
"method":{
"type":"string",
"description":"For data source plugins. Route method matches the HTTP verb like GET or POST."
},
"url":{
"type":"string",
"description":"For data source plugins. Route URL is where the request is proxied to.",
"format":"uri"
},
"reqSignedIn":{
"type":"boolean"
},
"reqRole":{
"type":"string"
},
"headers":{
"type":"array",
"description":"For data source plugins. Route headers adds HTTP headers to the proxied request."
},
"tokenAuth":{
"type":"object",
"description":"For data source plugins. Token authentication section used with an OAuth API.",
"additionalProperties":false,
"properties":{
"url":{
"type":"string",
"description":"For data source plugins. URL to fetch the authentication token.",
"format":"uri"
},
"params":{
"type":"object",
"description":"For data source plugins. Parameters for the token authentication request.",
"additionalProperties":false,
"properties":{
"grant_type":{
"type":"string",
"description":"For data source plugins. OAuth grant type."
},
"client_id":{
"type":"string",
"description":"For data source plugins. OAuth client id."
},
"client_secret":{
"type":"string",
"description":"For data source plugins. OAuth client secret. Usually populated by decrypting the secret from the SecureJson blob."
},
"resource":{
"type":"string",
"description":"For data source plugins. OAuth resource."