Grafana Tools
Written By Christopher Scaminaci
Last updated 7 days ago
Grafana Tools
grafana_ · 309 tools · Free 137 · Pro 172
Grafana observability: dashboards, folders and search; data sources, health tests and the query endpoint; alerting provisioning and Prometheus rule import; annotations; organizations, users, teams and service accounts; reporting; licensing; query history; cloud migration; instance administration. Auth is a static service account token minted in the customer's own Grafana; its authority is that account's role, not a request scope. The tenant supplies the instance URL, and its path is preserved: a Grafana behind a reverse proxy serves every route under a sub-path. An optional organization id rides every call except /api/admin/; instance-wide tools accept none. Paging is page + limit (or perpage) from 1, no cursor, capped at 1000 (5000 on /api/search). Responses are bare JSON passed through unchanged; fifteen reads answer YAML, HCL, CSV or XML as text, and three report downloads answer a short-lived link. Sixty-four tools wrap deprecated operations; sixty-one need Enterprise or Cloud.
All connector tools · Grafana setup guide
Grafana tool groups
- Dashboard snapshots — 6 tools
- Dashboard versions — 2 tools
- Dashboards — 10 tools
- Public dashboards — 8 tools
- Search — 2 tools
- Folders — 9 tools
- Library panels — 7 tools
- Playlists — 6 tools
- Data source caching and access rules — 7 tools
- Data source correlations — 6 tools
- Data source proxy — 4 tools
- Data source query — 1 tool
- Data sources — 9 tools
- Alert rules — 11 tools
- Contact points — 5 tools
- Mute timings — 7 tools
- Notification policies — 4 tools
- Notification templates — 4 tools
- Prometheus rule conversion — 14 tools
- Recording rules — 8 tools
- Annotations — 9 tools
- All organizations — 12 tools
- Current organization — 14 tools
- Quotas — 6 tools
- Signed-in user — 13 tools
- Team sync — 4 tools
- Teams — 12 tools
- Users — 7 tools
- Service accounts — 8 tools
- Resource permissions — 6 tools
- Role assignments — 10 tools
- Roles — 8 tools
- Reporting — 13 tools
- Anonymous devices — 2 tools
- Instance health — 1 tool
- Instance settings — 3 tools
- Instance users — 9 tools
- LDAP — 5 tools
- Provisioning reload — 4 tools
- SSO settings — 6 tools
- Cloud migration — 13 tools
- Licensing — 8 tools
- Query history — 6 tools
Dashboard snapshots
grafana_create_dashboard_snapshot details
grafana_create_dashboard_snapshot details
[Grafana] When creating a snapshot using the API, you have to provide the full dashboard payload including the snapshot data. This endpoint is designed for the Grafana UI. POST /api/snapshots. Send the request body as JSON; Grafana documents these fields: apiVersion, dashboard, deleteKey, expires, external, key, kind, name. Required: dashboard. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_dashboard_snapshot details
grafana_delete_dashboard_snapshot details
[Grafana] DESTRUCTIVE: delete Snapshot by Key. It deletes the resource outright, and Grafana does not undo this. DELETE /api/snapshots/. Path parameters: key. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_dashboard_snapshot_by_delete_key details
grafana_delete_dashboard_snapshot_by_delete_key details
[Grafana] DESTRUCTIVE: delete a dashboard snapshot using its delete key. GET /api/snapshots-delete/. Grafana serves this DELETION over a GET - that is the vendor's design, not a mistake here, and its own summary for the route is Delete Snapshot by deleteKey. The snapshot and the public link to it stop working immediately. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_dashboard_snapshot details
grafana_get_dashboard_snapshot details
[Grafana] Get Snapshot by Key. GET /api/snapshots/. Path parameters: key. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_sharing_options details
grafana_get_sharing_options details
[Grafana] Get snapshot sharing settings. GET /api/snapshot/shared-options. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_search_dashboard_snapshots details
grafana_search_dashboard_snapshots details
[Grafana] List snapshots. GET /api/dashboard/snapshots. Optional filters: query, limit. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Dashboard versions
grafana_get_dashboard_version_by_uid details
grafana_get_dashboard_version_by_uid details
[Grafana] Get a specific dashboard version using UID. GET /api/dashboards/uid//versions/. Path parameters: DashboardVersionID, uid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_dashboard_versions_by_uid details
grafana_get_dashboard_versions_by_uid details
[Grafana] Gets all existing versions for the dashboard using UID. GET /api/dashboards/uid//versions. Path parameters: uid. Optional filters: limit, start. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Dashboards
grafana_delete_dashboard_by_uid details
grafana_delete_dashboard_by_uid details
[Grafana] DESTRUCTIVE: delete a dashboard by uid. DELETE /api/dashboards/uid/. It takes the dashboard's whole version history with it, so grafana_restore_dashboard_version_by_uid cannot bring it back - the versions are gone too. Anything linking to it, including alert rules annotated onto its panels and playlists that include it, is left pointing at nothing. Get the uid from grafana_search and confirm the title before calling. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_dashboard_by_uid details
grafana_get_dashboard_by_uid details
[Grafana] Read one dashboard whole - its panels, queries, variables, annotations and version - by uid. GET /api/dashboards/uid/. Get the uid from grafana_search; the numeric id that also appears in Grafana responses is deprecated and should not be used to address anything. The response is {dashboard, meta}: the dashboard object is the same JSON grafana_post_dashboard takes back, so read-modify-write works. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_dashboard_permissions_list_by_uid details
grafana_get_dashboard_permissions_list_by_uid details
[Grafana] Gets all existing permissions for the given dashboard. GET /api/dashboards/uid//permissions. Path parameters: uid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_dashboard_tags details
grafana_get_dashboard_tags details
[Grafana] Get all dashboards tags of an organization. GET /api/dashboards/tags. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_home_dashboard details
grafana_get_home_dashboard details
[Grafana] NOTE: the home dashboard is configured in preferences. This API will be removed in G13. GET /api/dashboards/home. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_import_dashboard details
grafana_import_dashboard details
[Grafana] Import dashboard. POST /api/dashboards/import. Send the request body as JSON; Grafana documents these fields: dashboard, folderUid, inputs, overwrite, path, pluginId. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_interpolate_dashboard details
grafana_interpolate_dashboard details
[Grafana] Interpolate dashboard. This is an experimental endpoint under dashboardLibrary or suggestedDashboards feature flags and is subject to change. POST /api/dashboards/interpolate. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_post_dashboard details
grafana_post_dashboard details
[Grafana] DESTRUCTIVE: create a dashboard, or save a new version of an existing one. POST /api/dashboards/db. Why this is destructive: a partial object REPLACES the dashboard rather than merging into it, so every panel, query, variable and annotation you leave out is gone. Read the current one with grafana_get_dashboard_by_uid first and send its dashboard object back with your changes. Send {dashboard: , folderUid, message, overwrite}. Keep the dashboard's uid and version to save safely: Grafana refuses a save whose version is stale unless overwrite is true, and overwrite true discards whatever anyone else saved in the meantime. Every save makes a new version, so grafana_restore_dashboard_version_by_uid can put the old one back - the customer's dashboard is wrong until somebody notices and does that, which is why this asks before it runs. message is the change note that shows in the version list; write one. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_restore_dashboard_version_by_uid details
grafana_restore_dashboard_version_by_uid details
[Grafana] Restore a dashboard to a given dashboard version using UID. POST /api/dashboards/uid//restore. Path parameters: uid. Send the request body as JSON; Grafana documents these fields: version. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_dashboard_permissions_by_uid details
grafana_update_dashboard_permissions_by_uid details
[Grafana] DESTRUCTIVE: updates permissions for a dashboard. It changes who can see or change what. Permission changes are easy to miss and hard to trace back afterwards. POST /api/dashboards/uid//permissions. Path parameters: uid. Send the request body as JSON; Grafana documents these fields: items. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Public dashboards
grafana_create_public_dashboard details
grafana_create_public_dashboard details
[Grafana] Create public dashboard for a dashboard. POST /api/dashboards/uid//public-dashboards. Path parameters: dashboardUid. Send the request body as JSON; Grafana documents these fields: accessToken, annotationsEnabled, isEnabled, share, timeSelectionEnabled, uid. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_public_dashboard details
grafana_delete_public_dashboard details
[Grafana] DESTRUCTIVE: delete public dashboard for a dashboard. It deletes the resource outright, and Grafana does not undo this. DELETE /api/dashboards/uid//public-dashboards/. Path parameters: dashboardUid, uid. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_public_annotations details
grafana_get_public_annotations details
[Grafana] Get annotations for a public dashboard. GET /api/public/dashboards//annotations. Path parameters: accessToken. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_public_dashboard details
grafana_get_public_dashboard details
[Grafana] Get public dashboard by dashboardUid. GET /api/dashboards/uid//public-dashboards. Path parameters: dashboardUid. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_list_public_dashboards details
grafana_list_public_dashboards details
[Grafana] Get list of public dashboards. GET /api/dashboards/public-dashboards. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_query_public_dashboard details
grafana_query_public_dashboard details
[Grafana] Get results for a given panel on a public dashboard. POST /api/public/dashboards//panels//query. Path parameters: accessToken, panelId. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_public_dashboard details
grafana_update_public_dashboard details
[Grafana] Update public dashboard for a dashboard. PATCH /api/dashboards/uid//public-dashboards/. Path parameters: dashboardUid, uid. Send the request body as JSON; Grafana documents these fields: accessToken, annotationsEnabled, isEnabled, share, timeSelectionEnabled, uid. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_view_public_dashboard details
grafana_view_public_dashboard details
[Grafana] Get public dashboard for view. GET /api/public/dashboards/. Path parameters: accessToken. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Search
grafana_list_sort_options details
grafana_list_sort_options details
[Grafana] List search sorting options. GET /api/search/sorting. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_search details
grafana_search details
[Grafana] Find dashboards and folders by name, tag or folder. GET /api/search. This is the entry point for almost everything else: it is where a dashboard uid comes from, and the uid is what every other dashboard tool takes. Filter with query (free text), tag (comma-separate several), type (dash-db for dashboards, dash-folder for folders), folderUIDs, starred and deleted. Paging is page plus limit, numbered from 1; Grafana caps limit at 5000 and StackJack caps it at 1000. Note the response is a BARE ARRAY, not an object with a count. Pass orgId to search inside a specific organization. Returns raw Grafana JSON.
Folders
grafana_create_folder details
grafana_create_folder details
[Grafana] Create folder. POST /api/folders. Send the request body as JSON; Grafana documents these fields: description, parentUid, title, uid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_folder details
grafana_delete_folder details
[Grafana] DESTRUCTIVE: delete a folder. DELETE /api/folders/. It takes the folder's CONTENTS with it - every dashboard inside it, and every alert rule stored in it - not just the folder. Grafana refuses if the folder holds Grafana-managed alert rules unless forceDeleteRules is true, and setting that deletes those rules, which stops the alerting they provide with nothing else announcing it. Call grafana_get_folder_descendant_counts first and read what is in there. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_folder_by_uid details
grafana_get_folder_by_uid details
[Grafana] Get folder by uid. GET /api/folders/. Path parameters: folder_uid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_folder_descendant_counts details
grafana_get_folder_descendant_counts details
[Grafana] Gets the count of each descendant of a folder by kind. The folder is identified by UID. GET /api/folders//counts. Path parameters: folder_uid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_folder_permission_list details
grafana_get_folder_permission_list details
[Grafana] Gets all existing permissions for the folder with the given `uid`. GET /api/folders//permissions. Path parameters: folder_uid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_folders details
grafana_get_folders details
[Grafana] List folders. GET /api/folders. Folders are how Grafana groups dashboards AND alert rules, and they are also the unit permissions are granted on, so this is usually the first call when mapping out an unfamiliar instance. Nest with parentUid; limit and page walk the list, numbered from 1 and capped at 1000 by StackJack. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_move_folder details
grafana_move_folder details
[Grafana] Move folder. POST /api/folders//move. Path parameters: folder_uid. Send the request body as JSON; Grafana documents these fields: parentUid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_folder details
grafana_update_folder details
[Grafana] Update folder. PUT /api/folders/. Path parameters: folder_uid. Send the request body as JSON; Grafana documents these fields: description, overwrite, title, version. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_folder_permissions details
grafana_update_folder_permissions details
[Grafana] DESTRUCTIVE: updates permissions for a folder. This operation will remove existing permissions if they’re not included in the request. It changes who can see or change what. Permission changes are easy to miss and hard to trace back afterwards. POST /api/folders//permissions. Path parameters: folder_uid. Send the request body as JSON; Grafana documents these fields: items. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Library panels
grafana_create_library_element details
grafana_create_library_element details
[Grafana] Create library element. POST /api/library-elements. Send the request body as JSON; Grafana documents these fields: folderUid, kind, model, name, uid. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_library_element_by_uid details
grafana_delete_library_element_by_uid details
[Grafana] DESTRUCTIVE: delete library element. It deletes the resource outright, and Grafana does not undo this. DELETE /api/library-elements/. Path parameters: library_element_uid. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_library_element_by_name details
grafana_get_library_element_by_name details
[Grafana] Get library element by name. GET /api/library-elements/name/. Path parameters: library_element_name. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_library_element_by_uid details
grafana_get_library_element_by_uid details
[Grafana] Get library element by UID. GET /api/library-elements/. Path parameters: library_element_uid. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_library_element_connections details
grafana_get_library_element_connections details
[Grafana] Get library element connections. GET /api/library-elements//connections/. Path parameters: library_element_uid. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_library_elements details
grafana_get_library_elements details
[Grafana] Get all library elements. GET /api/library-elements. Optional filters: searchString, kind, sortDirection, typeFilter, excludeUid, folderFilter, folderFilterUIDs, perPage, page. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_library_element details
grafana_update_library_element details
[Grafana] Update library element. PATCH /api/library-elements/. Path parameters: library_element_uid. Send the request body as JSON; Grafana documents these fields: folderUid, kind, model, name, uid, version. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Playlists
grafana_create_playlist details
grafana_create_playlist details
[Grafana] Create playlist. POST /api/playlists. Send the request body as JSON; Grafana documents these fields: interval, items, name. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_playlist details
grafana_delete_playlist details
[Grafana] DESTRUCTIVE: delete playlist. It deletes the resource outright, and Grafana does not undo this. DELETE /api/playlists/. Path parameters: uid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_playlist details
grafana_get_playlist details
[Grafana] Get playlist. GET /api/playlists/. Path parameters: uid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_playlist_items details
grafana_get_playlist_items details
[Grafana] Get playlist items. GET /api/playlists//items. Path parameters: uid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_search_playlists details
grafana_search_playlists details
[Grafana] Get playlists. GET /api/playlists. Optional filters: query, limit. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_playlist details
grafana_update_playlist details
[Grafana] Update playlist. PUT /api/playlists/. Path parameters: uid. Send the request body as JSON; Grafana documents these fields: interval, items, name, uid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Data source caching and access rules
grafana_clean_data_source_cache details
grafana_clean_data_source_cache details
[Grafana] clean cache for a single data source. POST /api/datasources//cache/clean. Path parameters: dataSourceUID. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_disable_data_source_cache details
grafana_disable_data_source_cache details
[Grafana] DESTRUCTIVE: disable cache for a single data source. It changes or clears the data source's query cache, which affects what every dashboard reading from it sees next. POST /api/datasources//cache/disable. Path parameters: dataSourceUID. Optional filters: dataSourceType. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_enable_data_source_cache details
grafana_enable_data_source_cache details
[Grafana] enable cache for a single data source. POST /api/datasources//cache/enable. Path parameters: dataSourceUID. Optional filters: dataSourceType. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_data_source_cache_config details
grafana_get_data_source_cache_config details
[Grafana] get cache config for a single data source. GET /api/datasources//cache. Path parameters: dataSourceUID. Optional filters: dataSourceType. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_team_lbac_rules details
grafana_get_team_lbac_rules details
[Grafana] Retrieves LBAC rules for a team. GET /api/datasources/uid//lbac/teams. Path parameters: uid. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_set_data_source_cache_config details
grafana_set_data_source_cache_config details
[Grafana] set cache config for a single data source. POST /api/datasources//cache. Path parameters: dataSourceUID. Optional filters: dataSourceType. Send the request body as JSON; Grafana documents these fields: dataSourceID, dataSourceUID, enabled, ttlQueriesMs, ttlResourcesMs, useDefaultTTL. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_team_lbac_rules details
grafana_update_team_lbac_rules details
[Grafana] DESTRUCTIVE: updates LBAC rules for a team. It REPLACES every team LBAC rule on the data source with the set you send, and the body is OPTIONAL - a call with no body replaces all of them with nothing. Those rules decide which rows of the underlying data each team may see, so dropping them WIDENS what a team can read rather than narrowing it. PUT /api/datasources/uid//lbac/teams. Path parameters: uid. Send the request body as JSON; Grafana documents these fields: rules. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Data source correlations
grafana_create_correlation details
grafana_create_correlation details
[Grafana] Add correlation. POST /api/datasources/uid//correlations. Path parameters: sourceUID. Send the request body as JSON; Grafana documents these fields: config, description, label, provisioned, targetUID, type. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_correlation details
grafana_delete_correlation details
[Grafana] DESTRUCTIVE: delete a correlation. Deleting a data source breaks every dashboard, alert rule and query that reads from it, and Grafana does not warn you which ones those are. DELETE /api/datasources/uid//correlations/. Path parameters: uid, correlationUID. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_correlation details
grafana_get_correlation details
[Grafana] Gets a correlation. GET /api/datasources/uid//correlations/. Path parameters: sourceUID, correlationUID. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_correlations details
grafana_get_correlations details
[Grafana] Gets all correlations. GET /api/datasources/correlations. Optional filters: limit, page, sourceUID. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_correlations_by_source_uid details
grafana_get_correlations_by_source_uid details
[Grafana] Gets all correlations originating from the given data source. GET /api/datasources/uid//correlations. Path parameters: sourceUID. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_correlation details
grafana_update_correlation details
[Grafana] Updates a correlation. PATCH /api/datasources/uid//correlations/. Path parameters: sourceUID, correlationUID. Send the request body as JSON; Grafana documents these fields: config, description, label, type. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Data source proxy
grafana_call_datasource_resource details
grafana_call_datasource_resource details
[Grafana] DESTRUCTIVE, OPEN WORLD: call a data source plugin's own resource endpoint through Grafana. GET /api/datasources/uid//resources/. Plugins expose their own routes here - label and metric name lookups on Prometheus, index lists on Elasticsearch, schema reads on SQL sources - and the path segment is forwarded as written, slashes and all. It is usually a read, but StackJack cannot see which route a plugin exposes or what it does, so it carries the open-world warning. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_datasource_proxy_delete details
grafana_datasource_proxy_delete details
[Grafana] DESTRUCTIVE, OPEN WORLD: forward a DELETE straight through Grafana to the upstream data source. DELETE /api/datasources/proxy/uid//. The path segment is sent to that system as written, so this deletes whatever that path names on the upstream system - a Prometheus series, an Elasticsearch index, a database row - and StackJack can neither see nor bound what that is. There is no undo. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_datasource_proxy_get details
grafana_datasource_proxy_get details
[Grafana] DESTRUCTIVE, OPEN WORLD: forward a GET straight through Grafana to the upstream data source. GET /api/datasources/proxy/uid//. Whatever you put in datasource_proxy_route is appended to that data source's own base URL and sent as written, slashes and all, so this tool reaches anything that system exposes - StackJack can neither see nor describe the effect in advance, and a GET on some data sources is not read-only. Prefer grafana_query_metrics_with_expressions, which is the supported way to query data; reach for the proxy only for a vendor endpoint that has no other route. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_datasource_proxy_post details
grafana_datasource_proxy_post details
[Grafana] DESTRUCTIVE, OPEN WORLD: forward a POST straight through Grafana to the upstream data source. POST /api/datasources/proxy/uid//. Both the path segment and the body are sent to that system as written, so this tool can do anything that data source's API can do - including its own writes and deletes - and StackJack can neither see nor bound what that is. Prefer grafana_query_metrics_with_expressions for querying. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Data source query
grafana_query_metrics_with_expressions details
grafana_query_metrics_with_expressions details
[Grafana] Run a query against any data source this Grafana has configured and get the result series back. This is how you ask the monitoring system a question - CPU on a host over the last hour, error rate on a service, rows from a SQL data source - rather than reading a dashboard that someone already built. POST /api/ds/query. It is a READ: it creates and changes nothing, despite the POST. The body is {queries: [...], from, to}: each query carries a datasource {uid, type}, a refId, and the fields that data source's own query language needs (expr for Prometheus, rawSql for SQL, expr plus queryType for Loki). Get a uid from grafana_get_data_sources. from and to are epoch milliseconds as strings, or relative like now-1h and now. Pass orgId to query inside a specific organization. Returns raw Grafana JSON - one frame per refId, in Grafana's dataframe shape.
Data sources
grafana_add_data_source details
grafana_add_data_source details
[Grafana] Create a data source. POST /api/datasources. Send the request body as JSON; Grafana documents these fields: access, basicAuth, basicAuthUser, database, isDefault, jsonData, name, secureJsonData, type, uid, url, user. Grafana documents 1 more field; the bodyJson parameter lists all of them. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_check_datasource_health_with_uid details
grafana_check_datasource_health_with_uid details
[Grafana] Ask Grafana to test one data source and report whether it is actually reachable and answering. GET /api/datasources/uid//health. This is the read to make when dashboards are blank or an alert rule stopped firing: it tells you whether the problem is the customer's Prometheus, Loki or database rather than Grafana. Grafana runs the data source plugin's own health check, so the message field carries the upstream system's words. Get the uid from grafana_get_data_sources. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_data_source_by_name details
grafana_delete_data_source_by_name details
[Grafana] DESTRUCTIVE: delete an existing data source by name. This function will be removed in the future. Deleting a data source breaks every dashboard, alert rule and query that reads from it, and Grafana does not warn you which ones those are. DELETE /api/datasources/name/. Path parameters: name. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_data_source_by_uid details
grafana_delete_data_source_by_uid details
[Grafana] DESTRUCTIVE: delete an existing data source by UID. Deleting a data source breaks every dashboard, alert rule and query that reads from it, and Grafana does not warn you which ones those are. DELETE /api/datasources/uid/. Path parameters: uid. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_data_source_by_name details
grafana_get_data_source_by_name details
[Grafana] Get a single data source by Name. This function will be removed in the future. GET /api/datasources/name/. Path parameters: name. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_data_source_by_uid details
grafana_get_data_source_by_uid details
[Grafana] Get a single data source by UID. GET /api/datasources/uid/. Path parameters: uid. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_data_source_id_by_name details
grafana_get_data_source_id_by_name details
[Grafana] Get data source Id by Name. This function will be removed in the future. GET /api/datasources/id/. Path parameters: name. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_data_sources details
grafana_get_data_sources details
[Grafana] List the data sources this Grafana queries - Prometheus, Loki, Elasticsearch, SQL databases, cloud provider metrics and plugin sources. GET /api/datasources. This is where a data source uid comes from, and that uid is what grafana_query_metrics_with_expressions and grafana_check_datasource_health_with_uid take. Secrets are never returned: Grafana replaces secureJsonData with a secureJsonFields map saying only which secrets are set. Pass orgId to list a specific organization's data sources. Returns raw Grafana JSON.
grafana_update_data_source_by_uid details
grafana_update_data_source_by_uid details
[Grafana] Update an existing data source. PUT /api/datasources/uid/. Path parameters: uid. Send the request body as JSON; Grafana documents these fields: access, basicAuth, basicAuthUser, database, isDefault, jsonData, name, secureJsonData, type, uid, url, user. Grafana documents 2 more fields; the bodyJson parameter lists all of them. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Alert rules
grafana_delete_alert_rule details
grafana_delete_alert_rule details
[Grafana] DESTRUCTIVE: delete a specific alert rule by UID. It deletes the resource outright, and Grafana does not undo this. DELETE /api/v1/provisioning/alert-rules/. Path parameters: UID. Optional import hints: X-Disable-Provenance. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_alert_rule_group details
grafana_delete_alert_rule_group details
[Grafana] DESTRUCTIVE: delete rule group. It deletes the resource outright, and Grafana does not undo this. DELETE /api/v1/provisioning/folder//rule-groups/. Path parameters: FolderUID, Group. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_alert_rule details
grafana_get_alert_rule details
[Grafana] Get a specific alert rule by UID. GET /api/v1/provisioning/alert-rules/. Path parameters: UID. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_alert_rule_export details
grafana_get_alert_rule_export details
[Grafana] Export an alert rule in provisioning file format. GET /api/v1/provisioning/alert-rules//export. Path parameters: UID. Optional filters: download, format. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_get_alert_rule_group details
grafana_get_alert_rule_group details
[Grafana] Get a rule group. GET /api/v1/provisioning/folder//rule-groups/. Path parameters: FolderUID, Group. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_alert_rule_group_export details
grafana_get_alert_rule_group_export details
[Grafana] Export an alert rule group in provisioning file format. GET /api/v1/provisioning/folder//rule-groups//export. Path parameters: FolderUID, Group. Optional filters: download, format. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_get_alert_rules details
grafana_get_alert_rules details
[Grafana] List every Grafana-managed alert rule in the organization. GET /api/v1/provisioning/alert-rules. Each rule carries its uid, title, folderUID, ruleGroup, condition, the queries it evaluates, its for duration, its labels and annotations, and whether it is paused. This is the inventory read for an alerting review - what is armed, what is paused, and what is silent because nobody built a rule for it. Silences and the Alertmanager configuration are NOT reachable through this API at all; Grafana publishes no machine-readable document for them. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_alert_rules_export details
grafana_get_alert_rules_export details
[Grafana] Export all alert rules in provisioning file format. GET /api/v1/provisioning/alert-rules/export. Optional filters: download, format, folderUid, group, ruleUid. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_post_alert_rule details
grafana_post_alert_rule details
[Grafana] Create a new alert rule. POST /api/v1/provisioning/alert-rules. Optional import hints: X-Disable-Provenance. Send the request body as JSON; Grafana documents these fields: annotations, condition, data, execErrState, folderUID, for, id, isPaused, keep_firing_for, labels, missingSeriesEvalsToResolve, noDataState. Grafana documents 8 more fields; the bodyJson parameter lists all of them. Required: condition, data, execErrState, folderUID, for, noDataState, orgID, ruleGroup, title. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_put_alert_rule details
grafana_put_alert_rule details
[Grafana] Update an existing alert rule. PUT /api/v1/provisioning/alert-rules/. Path parameters: UID. Optional import hints: X-Disable-Provenance. Send the request body as JSON; Grafana documents these fields: annotations, condition, data, execErrState, folderUID, for, id, isPaused, keep_firing_for, labels, missingSeriesEvalsToResolve, noDataState. Grafana documents 8 more fields; the bodyJson parameter lists all of them. Required: condition, data, execErrState, folderUID, for, noDataState, orgID, ruleGroup, title. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_put_alert_rule_group details
grafana_put_alert_rule_group details
[Grafana] Create or update alert rule group. PUT /api/v1/provisioning/folder//rule-groups/. Path parameters: FolderUID, Group. Optional import hints: X-Disable-Provenance. Send the request body as JSON; Grafana documents these fields: folderUid, interval, rules, title. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Contact points
grafana_delete_contactpoints details
grafana_delete_contactpoints details
[Grafana] DESTRUCTIVE: delete a contact point. It deletes the resource outright, and Grafana does not undo this. DELETE /api/v1/provisioning/contact-points/. Path parameters: UID. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_contactpoints details
grafana_get_contactpoints details
[Grafana] Get all the contact points. GET /api/v1/provisioning/contact-points. Optional filters: name. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_contactpoints_export details
grafana_get_contactpoints_export details
[Grafana] Export all contact points in provisioning file format. GET /api/v1/provisioning/contact-points/export. Optional filters: download, format, decrypt, name. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_post_contactpoints details
grafana_post_contactpoints details
[Grafana] Create a contact point. POST /api/v1/provisioning/contact-points. Optional import hints: X-Disable-Provenance. Send the request body as JSON; Grafana documents these fields: disableResolveMessage, name, provenance, settings, type, uid. Required: settings, type. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_put_contactpoint details
grafana_put_contactpoint details
[Grafana] Update an existing contact point. PUT /api/v1/provisioning/contact-points/. Path parameters: UID. Optional import hints: X-Disable-Provenance. Send the request body as JSON; Grafana documents these fields: disableResolveMessage, name, provenance, settings, type, uid. Required: settings, type. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Mute timings
grafana_delete_mute_timing details
grafana_delete_mute_timing details
[Grafana] DESTRUCTIVE: delete a mute timing. It deletes the resource outright, and Grafana does not undo this. DELETE /api/v1/provisioning/mute-timings/. Path parameters: name. Optional filters: version. Optional import hints: X-Disable-Provenance. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_export_mute_timing details
grafana_export_mute_timing details
[Grafana] Export a mute timing in provisioning format. GET /api/v1/provisioning/mute-timings//export. Path parameters: name. Optional filters: download, format. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_export_mute_timings details
grafana_export_mute_timings details
[Grafana] Export all mute timings in provisioning format. GET /api/v1/provisioning/mute-timings/export. Optional filters: download, format. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_get_mute_timing details
grafana_get_mute_timing details
[Grafana] Get a mute timing. GET /api/v1/provisioning/mute-timings/. Path parameters: name. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_mute_timings details
grafana_get_mute_timings details
[Grafana] Get all the mute timings. GET /api/v1/provisioning/mute-timings. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_post_mute_timing details
grafana_post_mute_timing details
[Grafana] Create a new mute timing. POST /api/v1/provisioning/mute-timings. Optional import hints: X-Disable-Provenance. Send the request body as JSON; Grafana documents these fields: name, time_intervals. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_put_mute_timing details
grafana_put_mute_timing details
[Grafana] Replace an existing mute timing. PUT /api/v1/provisioning/mute-timings/. Path parameters: name. Optional import hints: X-Disable-Provenance. Send the request body as JSON; Grafana documents these fields: name, time_intervals. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Notification policies
grafana_get_policy_tree details
grafana_get_policy_tree details
[Grafana] Get the notification policy tree. GET /api/v1/provisioning/policies. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_policy_tree_export details
grafana_get_policy_tree_export details
[Grafana] Export the notification policy tree in provisioning file format. GET /api/v1/provisioning/policies/export. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_put_policy_tree details
grafana_put_policy_tree details
[Grafana] DESTRUCTIVE: replace the organization's WHOLE notification policy tree. PUT /api/v1/provisioning/policies. The policy tree is what decides which contact point each firing alert reaches; this call replaces it outright rather than merging into it, so anything not in the body you send is gone. Getting it wrong silently stops alert notifications reaching anyone and nothing announces that - the alerts still fire, they just go nowhere. Read the current tree with grafana_get_policy_tree, change that object, and send it back. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_reset_policy_tree details
grafana_reset_policy_tree details
[Grafana] DESTRUCTIVE: reset the organization's notification policy tree to Grafana's default. DELETE /api/v1/provisioning/policies. Every routing rule anyone built is discarded and every alert falls back to the default contact point. If that default is unset or wrong, alert notifications stop reaching anyone while the alerts keep firing, and nothing announces it. Save the current tree with grafana_get_policy_tree_export first. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Notification templates
grafana_delete_template details
grafana_delete_template details
[Grafana] DESTRUCTIVE: delete a notification template group. It deletes the resource outright, and Grafana does not undo this. DELETE /api/v1/provisioning/templates/. Path parameters: name. Optional filters: version. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_template details
grafana_get_template details
[Grafana] Get a notification template group. GET /api/v1/provisioning/templates/. Path parameters: name. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_templates details
grafana_get_templates details
[Grafana] Get all notification template groups. GET /api/v1/provisioning/templates. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_put_template details
grafana_put_template details
[Grafana] Updates an existing notification template group. PUT /api/v1/provisioning/templates/. Path parameters: name. Optional import hints: X-Disable-Provenance. Send the request body as JSON; Grafana documents these fields: template, version. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Prometheus rule conversion
grafana_convert_prometheus_cortex_delete_namespace details
grafana_convert_prometheus_cortex_delete_namespace details
[Grafana] DESTRUCTIVE: deletes all rule groups that were imported from Prometheus-compatible sources within the specified namespace. It deletes every Grafana alert rule that was imported from a Prometheus rule file under this namespace or group, so the alerting they provide stops. DELETE /api/convert/api/prom/rules/. Path parameters: NamespaceTitle. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_convert_prometheus_cortex_delete_rule_group details
grafana_convert_prometheus_cortex_delete_rule_group details
[Grafana] DESTRUCTIVE: deletes a specific rule group if it was imported from a Prometheus-compatible source. It deletes every Grafana alert rule that was imported from a Prometheus rule file under this namespace or group, so the alerting they provide stops. DELETE /api/convert/api/prom/rules//. Path parameters: NamespaceTitle, Group. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_convert_prometheus_cortex_get_namespace details
grafana_convert_prometheus_cortex_get_namespace details
[Grafana] Gets Grafana-managed alert rules that were imported from Prometheus-compatible sources for a specified namespace (folder). GET /api/convert/api/prom/rules/. Path parameters: NamespaceTitle. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_convert_prometheus_cortex_get_rule_group details
grafana_convert_prometheus_cortex_get_rule_group details
[Grafana] Gets a single rule group in Prometheus-compatible format if it was imported from a Prometheus-compatible source. GET /api/convert/api/prom/rules//. Path parameters: NamespaceTitle, Group. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_convert_prometheus_cortex_get_rules details
grafana_convert_prometheus_cortex_get_rules details
[Grafana] Gets all Grafana-managed alert rules that were imported from Prometheus-compatible sources, grouped by namespace. GET /api/convert/api/prom/rules. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_convert_prometheus_cortex_post_rule_group details
grafana_convert_prometheus_cortex_post_rule_group details
[Grafana] Converts a Prometheus rule group into a Grafana rule group and creates or updates it within the specified namespace. POST /api/convert/api/prom/rules/. Path parameters: NamespaceTitle. Optional import hints: x-grafana-alerting-datasource-uid, x-grafana-alerting-recording-rules-paused, x-grafana-alerting-alert-rules-paused, x-grafana-alerting-target-datasource-uid, x-grafana-alerting-folder-uid, x-grafana-alerting-notification-settings. Send the rule group as a Prometheus-format YAML document; it is passed to Grafana verbatim. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_convert_prometheus_cortex_post_rule_groups details
grafana_convert_prometheus_cortex_post_rule_groups details
[Grafana] Converts the submitted rule groups into Grafana-Managed Rules. POST /api/convert/api/prom/rules. Send the rule groups as a YAML document. Grafana's specification declares no request body for this route even though its own summary describes submitted rule groups, so StackJack forwards exactly what you send and claims no shape for it. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_convert_prometheus_delete_namespace details
grafana_convert_prometheus_delete_namespace details
[Grafana] DESTRUCTIVE: deletes all rule groups that were imported from Prometheus-compatible sources within the specified namespace. It deletes every Grafana alert rule that was imported from a Prometheus rule file under this namespace or group, so the alerting they provide stops. DELETE /api/convert/prometheus/config/v1/rules/. Path parameters: NamespaceTitle. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_convert_prometheus_delete_rule_group details
grafana_convert_prometheus_delete_rule_group details
[Grafana] DESTRUCTIVE: deletes a specific rule group if it was imported from a Prometheus-compatible source. It deletes every Grafana alert rule that was imported from a Prometheus rule file under this namespace or group, so the alerting they provide stops. DELETE /api/convert/prometheus/config/v1/rules//. Path parameters: NamespaceTitle, Group. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_convert_prometheus_get_namespace details
grafana_convert_prometheus_get_namespace details
[Grafana] Gets Grafana-managed alert rules that were imported from Prometheus-compatible sources for a specified namespace (folder). GET /api/convert/prometheus/config/v1/rules/. Path parameters: NamespaceTitle. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_convert_prometheus_get_rule_group details
grafana_convert_prometheus_get_rule_group details
[Grafana] Gets a single rule group in Prometheus-compatible format if it was imported from a Prometheus-compatible source. GET /api/convert/prometheus/config/v1/rules//. Path parameters: NamespaceTitle, Group. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_convert_prometheus_get_rules details
grafana_convert_prometheus_get_rules details
[Grafana] Gets all Grafana-managed alert rules that were imported from Prometheus-compatible sources, grouped by namespace. GET /api/convert/prometheus/config/v1/rules. Pass orgId to act on a specific Grafana organization inside the instance. Returns the document Grafana answers with, verbatim - YAML by default on this route, not JSON.
grafana_convert_prometheus_post_rule_group details
grafana_convert_prometheus_post_rule_group details
[Grafana] Converts a Prometheus rule group into a Grafana rule group and creates or updates it within the specified namespace. POST /api/convert/prometheus/config/v1/rules/. Path parameters: NamespaceTitle. Optional import hints: x-grafana-alerting-datasource-uid, x-grafana-alerting-recording-rules-paused, x-grafana-alerting-alert-rules-paused, x-grafana-alerting-target-datasource-uid, x-grafana-alerting-folder-uid, x-grafana-alerting-notification-settings. Send the rule group as a Prometheus-format YAML document; it is passed to Grafana verbatim. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_convert_prometheus_post_rule_groups details
grafana_convert_prometheus_post_rule_groups details
[Grafana] Converts the submitted rule groups into Grafana-Managed Rules. POST /api/convert/prometheus/config/v1/rules. Send the rule groups as a YAML document. Grafana's specification declares no request body for this route even though its own summary describes submitted rule groups, so StackJack forwards exactly what you send and claims no shape for it. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Recording rules
grafana_create_recording_rule details
grafana_create_recording_rule details
[Grafana] Create a recording rule that is then registered and started. POST /api/recording-rules. Send the request body as JSON; Grafana documents these fields: active, count, description, dest_data_source_uid, id, interval, name, prom_name, queries, range, target_ref_id. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_create_recording_rule_write_target details
grafana_create_recording_rule_write_target details
[Grafana] Create a remote write target. POST /api/recording-rules/writer. Send the request body as JSON; Grafana documents these fields: data_source_uid, id, remote_write_path. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_recording_rule details
grafana_delete_recording_rule details
[Grafana] DESTRUCTIVE: delete removes the rule from the registry and stops it. It deletes the recording rule, so the series it was writing stop being produced and anything querying them goes empty. DELETE /api/recording-rules/. Path parameters: recordingRuleID. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_recording_rule_write_target details
grafana_delete_recording_rule_write_target details
[Grafana] DESTRUCTIVE: delete the remote write target. It deletes the recording rule, so the series it was writing stop being produced and anything querying them goes empty. DELETE /api/recording-rules/writer. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_recording_rule_write_target details
grafana_get_recording_rule_write_target details
[Grafana] Return the prometheus remote write target. GET /api/recording-rules/writer. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_list_recording_rules details
grafana_list_recording_rules details
[Grafana] Lists all rules in the database: active or deleted. GET /api/recording-rules. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_test_create_recording_rule details
grafana_test_create_recording_rule details
[Grafana] Test a recording rule. POST /api/recording-rules/test. Send the request body as JSON; Grafana documents these fields: active, count, description, dest_data_source_uid, id, interval, name, prom_name, queries, range, target_ref_id. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_recording_rule details
grafana_update_recording_rule details
[Grafana] Update the active status of a rule. PUT /api/recording-rules. Send the request body as JSON; Grafana documents these fields: active, count, description, dest_data_source_uid, id, interval, name, prom_name, queries, range, target_ref_id. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Annotations
grafana_delete_annotation_by_id details
grafana_delete_annotation_by_id details
[Grafana] DESTRUCTIVE: delete Annotation By ID. It deletes the resource outright, and Grafana does not undo this. DELETE /api/annotations/. Path parameters: annotation_id. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_annotation_by_id details
grafana_get_annotation_by_id details
[Grafana] Get Annotation by ID. GET /api/annotations/. Path parameters: annotation_id. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_annotation_tags details
grafana_get_annotation_tags details
[Grafana] Find Annotations Tags. GET /api/annotations/tags. Optional filters: tag, limit. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_annotations details
grafana_get_annotations details
[Grafana] Find Annotations. GET /api/annotations. Optional filters: from, to, userId, userUID, alertId, alertUID, dashboardId, dashboardUID, panelId, limit, tags, type, matchAny. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_mass_delete_annotations details
grafana_mass_delete_annotations details
[Grafana] DESTRUCTIVE: delete annotations in bulk. POST /api/annotations/mass-delete. It deletes by dashboard or panel rather than by id, so a wrong dashboardUID erases the entire change history for that dashboard - every deployment and maintenance marker anyone ever wrote on it. Send {dashboardUID, panelId} or {dashboardId, panelId}. There is no undo and no dry run; read them first with grafana_get_annotations for the same dashboard. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_patch_annotation details
grafana_patch_annotation details
[Grafana] Patch Annotation. PATCH /api/annotations/. Path parameters: annotation_id. Send the request body as JSON; Grafana documents these fields: data, id, tags, text, time, timeEnd. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_post_annotation details
grafana_post_annotation details
[Grafana] Write an annotation - a timestamped marker that appears on every dashboard panel covering that moment. POST /api/annotations. This is the highest-value small write in the connector: put a marker down for a deployment, a maintenance window, a failover or a config change and every graph afterwards shows what happened when. Send {time, timeEnd, tags, text}, with times as epoch MILLISECONDS; add dashboardUID and panelId to pin it to one panel, or leave both off for an organization-wide marker. timeEnd makes it a region rather than a point. Tag it so grafana_get_annotations can find it again. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_post_graphite_annotation details
grafana_post_graphite_annotation details
[Grafana] Create Annotation in Graphite format. POST /api/annotations/graphite. Send the request body as JSON; Grafana documents these fields: data, tags, what, when. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_annotation details
grafana_update_annotation details
[Grafana] Update Annotation. PUT /api/annotations/. Path parameters: annotation_id. Send the request body as JSON; Grafana documents these fields: data, id, tags, text, time, timeEnd. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
All organizations
grafana_add_org_user details
grafana_add_org_user details
[Grafana] Add a new user to the current organization. POST /api/orgs//users. Path parameters: org_id. Send the request body as JSON; Grafana documents these fields: loginOrEmail, role. Returns raw Grafana JSON. Grafana's own documentation marks this route as Basic-authentication only - its API specification omits the marking, and the vendor's Admin Organizations guide states it outright - so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_create_org details
grafana_create_org details
[Grafana] Create Organization. POST /api/orgs. Send the request body as JSON; Grafana documents these fields: name. Returns raw Grafana JSON. Grafana's own documentation marks this route as Basic-authentication only - its API specification omits the marking, and the vendor's Admin Organizations guide states it outright - so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_delete_org_by_id details
grafana_delete_org_by_id details
[Grafana] DESTRUCTIVE: delete Organization. It deletes a whole Grafana organization - its dashboards, data sources, alert rules and members - which for an MSP running one organization per customer is that customer's entire Grafana. DELETE /api/orgs/. Path parameters: org_id. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_get_org_by_id details
grafana_get_org_by_id details
[Grafana] Get Organization by ID. GET /api/orgs/. Path parameters: org_id. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_get_org_by_name details
grafana_get_org_by_name details
[Grafana] Get Organization by Name. GET /api/orgs/name/. Path parameters: org_name. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_get_org_users details
grafana_get_org_users details
[Grafana] Get Users in Organization. GET /api/orgs//users. Path parameters: org_id. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_remove_org_user details
grafana_remove_org_user details
[Grafana] DESTRUCTIVE: delete user in current organization. It deletes the resource outright, and Grafana does not undo this. DELETE /api/orgs//users/. Path parameters: org_id, user_id. Returns raw Grafana JSON. Grafana's own documentation marks this route as Basic-authentication only - its API specification omits the marking, and the vendor's Admin Organizations guide states it outright - so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_search_org_users details
grafana_search_org_users details
[Grafana] Search Users in Organization. GET /api/orgs//users/search. Path parameters: org_id. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_search_orgs details
grafana_search_orgs details
[Grafana] List every organization in the instance. GET /api/orgs. For an MSP running one Grafana with one organization per customer, this is the customer list, and the ids it returns are what the orgId argument on every other tool takes. Use grafana_get_current_org for the organization this connection is already working in. Paging is page plus perpage, numbered from 1 and capped at 1000 by StackJack. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_update_org details
grafana_update_org details
[Grafana] Update Organization. PUT /api/orgs/. Path parameters: org_id. Send the request body as JSON; Grafana documents these fields: name. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_update_org_address details
grafana_update_org_address details
[Grafana] Update Organization's address. PUT /api/orgs//address. Path parameters: org_id. Send the request body as JSON; Grafana documents these fields: address1, address2, city, country, state, zipcode. Returns raw Grafana JSON.
grafana_update_org_user details
grafana_update_org_user details
[Grafana] Update Users in Organization. PATCH /api/orgs//users/. Path parameters: org_id, user_id. Send the request body as JSON; Grafana documents these fields: role. Returns raw Grafana JSON. Grafana's own documentation marks this route as Basic-authentication only - its API specification omits the marking, and the vendor's Admin Organizations guide states it outright - so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
Current organization
grafana_add_org_invite details
grafana_add_org_invite details
[Grafana] Add invite. POST /api/org/invites. Send the request body as JSON; Grafana documents these fields: loginOrEmail, name, role, sendEmail. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_add_org_user_to_current_org details
grafana_add_org_user_to_current_org details
[Grafana] Add a new user to the current organization. POST /api/org/users. Send the request body as JSON; Grafana documents these fields: loginOrEmail, role. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_current_org details
grafana_get_current_org details
[Grafana] Read the organization this connection is working in - its id and name. GET /api/org. Cheap, takes no parameters, and it is the call to make first when you want to know what this credential can actually see: it is also what StackJack uses to check the connection is alive. For an instance holding several customer organizations, grafana_search_orgs would list them all but Grafana refuses service account tokens on that route, while this one works for any token. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_org_preferences details
grafana_get_org_preferences details
[Grafana] Get Current Org Prefs. GET /api/org/preferences. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_org_users_for_current_org details
grafana_get_org_users_for_current_org details
[Grafana] Get all users within the current organization. GET /api/org/users. Optional filters: query, limit. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_org_users_for_current_org_lookup details
grafana_get_org_users_for_current_org_lookup details
[Grafana] Get all users within the current organization (lookup). GET /api/org/users/lookup. Optional filters: query, limit. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_pending_org_invites details
grafana_get_pending_org_invites details
[Grafana] Get pending invites. GET /api/org/invites. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_patch_org_preferences details
grafana_patch_org_preferences details
[Grafana] Patch Current Org Prefs. PATCH /api/org/preferences. Send the request body as JSON; Grafana documents these fields: homeDashboardId, homeDashboardUID, language, navbar, queryHistory, theme, timezone, weekStart. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_remove_org_user_for_current_org details
grafana_remove_org_user_for_current_org details
[Grafana] DESTRUCTIVE: delete user in current organization. It deletes the resource outright, and Grafana does not undo this. DELETE /api/org/users/. Path parameters: user_id. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_revoke_invite details
grafana_revoke_invite details
[Grafana] DESTRUCTIVE: revoke invite. It deletes the resource outright, and Grafana does not undo this. DELETE /api/org/invites//revoke. Path parameters: invitation_code. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_current_org details
grafana_update_current_org details
[Grafana] Update current Organization. PUT /api/org. Send the request body as JSON; Grafana documents these fields: name. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_current_org_address details
grafana_update_current_org_address details
[Grafana] Update current Organization's address. PUT /api/org/address. Send the request body as JSON; Grafana documents these fields: address1, address2, city, country, state, zipcode. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_org_preferences details
grafana_update_org_preferences details
[Grafana] Update Current Org Prefs. PUT /api/org/preferences. Send the request body as JSON; Grafana documents these fields: homeDashboardId, homeDashboardUID, language, navbar, queryHistory, theme, timezone, weekStart. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_org_user_for_current_org details
grafana_update_org_user_for_current_org details
[Grafana] Updates the given user. PATCH /api/org/users/. Path parameters: user_id. Send the request body as JSON; Grafana documents these fields: role. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Quotas
grafana_get_current_org_quota details
grafana_get_current_org_quota details
[Grafana] Fetch Organization quota. GET /api/org/quotas. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_org_quota details
grafana_get_org_quota details
[Grafana] Fetch Organization quota. GET /api/orgs//quotas. Path parameters: org_id. Returns raw Grafana JSON.
grafana_get_user_quota details
grafana_get_user_quota details
[Grafana] Fetch user quota. GET /api/admin/users//quotas. Path parameters: user_id. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_get_user_quotas details
grafana_get_user_quotas details
[Grafana] Fetch user quota. GET /api/user/quotas. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_org_quota details
grafana_update_org_quota details
[Grafana] DESTRUCTIVE: update user quota. It changes a resource quota, which can stop the organization or the user creating dashboards, data sources or alert rules with no other warning. PUT /api/orgs//quotas/. Path parameters: quota_target, org_id. Send the request body as JSON; Grafana documents these fields: limit, target. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_update_user_quota details
grafana_update_user_quota details
[Grafana] DESTRUCTIVE: update user quota. It changes a resource quota, which can stop the organization or the user creating dashboards, data sources or alert rules with no other warning. PUT /api/admin/users//quotas/. Path parameters: quota_target, user_id. Send the request body as JSON; Grafana documents these fields: limit, target. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
Signed-in user
grafana_change_user_password details
grafana_change_user_password details
[Grafana] DESTRUCTIVE: change Password. It replaces the password of the SERVER-ADMINISTRATOR ACCOUNT THIS CONNECTION SIGNS IN WITH, not another person's: Grafana resolves this route against the signed-in user, and this route travels on the username and password stored on the connection. The stored pair stops working the moment Grafana accepts the change, so every Basic-only Grafana tool fails until somebody re-enters the new password in Configure. Use grafana_admin_update_user_password to change anybody else's password. PUT /api/user/password. Send the request body as JSON; Grafana documents these fields: newPassword, oldPassword. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_get_signed_in_user details
grafana_get_signed_in_user details
[Grafana] Get (current authenticated user). GET /api/user. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_signed_in_user_org_list details
grafana_get_signed_in_user_org_list details
[Grafana] Organizations of the actual User. GET /api/user/orgs. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_get_signed_in_user_team_list details
grafana_get_signed_in_user_team_list details
[Grafana] Teams that the actual User is member of. GET /api/user/teams. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_user_auth_tokens details
grafana_get_user_auth_tokens details
[Grafana] Auth tokens of the actual User. GET /api/user/auth-tokens. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_user_preferences details
grafana_get_user_preferences details
[Grafana] Get user preferences. GET /api/user/preferences. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_patch_user_preferences details
grafana_patch_user_preferences details
[Grafana] Patch user preferences. PATCH /api/user/preferences. Send the request body as JSON; Grafana documents these fields: homeDashboardId, homeDashboardUID, language, navbar, queryHistory, theme, timezone, weekStart. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_revoke_user_auth_token details
grafana_revoke_user_auth_token details
[Grafana] DESTRUCTIVE: revoke an auth token of the actual User. It ends one of the signed-in user's own live Grafana sessions immediately - which, on a service account token, can be the session StackJack itself is using. POST /api/user/revoke-auth-token. Send the request body as JSON; Grafana documents these fields: authTokenId. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_star_dashboard_by_uid details
grafana_star_dashboard_by_uid details
[Grafana] Star a dashboard. POST /api/user/stars/dashboard/uid/. Path parameters: dashboard_uid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_unstar_dashboard_by_uid details
grafana_unstar_dashboard_by_uid details
[Grafana] DESTRUCTIVE: unstar a dashboard. It deletes the resource outright, and Grafana does not undo this. DELETE /api/user/stars/dashboard/uid/. Path parameters: dashboard_uid. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_signed_in_user details
grafana_update_signed_in_user details
[Grafana] Update signed in User. PUT /api/user. Send the request body as JSON; Grafana documents these fields: email, login, name, theme. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_user_preferences details
grafana_update_user_preferences details
[Grafana] Update user preferences. PUT /api/user/preferences. Send the request body as JSON; Grafana documents these fields: homeDashboardId, homeDashboardUID, language, navbar, queryHistory, theme, timezone, weekStart. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_user_set_using_org details
grafana_user_set_using_org details
[Grafana] Switch user context for signed in user. POST /api/user/using/. Path parameters: org_id. Returns raw Grafana JSON.
Team sync
grafana_add_team_group details
grafana_add_team_group details
[Grafana] Add External Group. POST /api/teams//groups. Path parameters: teamId. Send the request body as JSON; Grafana documents these fields: groupId. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_team_groups details
grafana_get_team_groups details
[Grafana] Get External Groups. GET /api/teams//groups. Path parameters: teamId. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_remove_team_group details
grafana_remove_team_group details
[Grafana] DESTRUCTIVE: remove External Group. It deletes the resource outright, and Grafana does not undo this. DELETE /api/teams//groups. Path parameters: teamId. Optional filters: groupId. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_search_team_groups details
grafana_search_team_groups details
[Grafana] Search for team groups with optional filtering and pagination. GET /api/teams//groups/search. Path parameters: teamId. Optional filters: page, perpage, query, name. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Teams
grafana_add_team_member details
grafana_add_team_member details
[Grafana] Add Team Member. POST /api/teams//members. Path parameters: team_id. Send the request body as JSON; Grafana documents these fields: userId. Required: userId. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_create_team details
grafana_create_team details
[Grafana] Add Team. POST /api/teams. Send the request body as JSON; Grafana documents these fields: email, name. Required: name. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_team_by_id details
grafana_delete_team_by_id details
[Grafana] DESTRUCTIVE: delete Team By ID. It deletes the resource outright, and Grafana does not undo this. DELETE /api/teams/. Path parameters: team_id. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_team_by_id details
grafana_get_team_by_id details
[Grafana] Get Team By ID. GET /api/teams/. Path parameters: team_id. Optional filters: accesscontrol. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_team_members details
grafana_get_team_members details
[Grafana] Get Team Members. GET /api/teams//members. Path parameters: team_id. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_team_preferences details
grafana_get_team_preferences details
[Grafana] Get Team Preferences. GET /api/teams//preferences. Path parameters: team_id. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_remove_team_member details
grafana_remove_team_member details
[Grafana] DESTRUCTIVE: remove Member From Team. It deletes the resource outright, and Grafana does not undo this. DELETE /api/teams//members/. Path parameters: team_id, user_id. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_search_teams details
grafana_search_teams details
[Grafana] Team Search With Paging. GET /api/teams/search. Optional filters: page, perpage, name, query, accesscontrol, sort. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_set_team_memberships details
grafana_set_team_memberships details
[Grafana] DESTRUCTIVE: set team memberships. It REPLACES the team's whole membership list with the one you send. Every member you leave out is removed from the team, and loses whatever dashboards, folders and data sources that team's permissions granted them. To add one person, read the current members first and send them all back. PUT /api/teams//members. Path parameters: team_id. Send the request body as JSON; Grafana documents these fields: admins, members. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_team details
grafana_update_team details
[Grafana] Update Team. PUT /api/teams/. Path parameters: team_id. Send the request body as JSON; Grafana documents these fields: email, name. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_team_member details
grafana_update_team_member details
[Grafana] Update Team Member. PUT /api/teams//members/. Path parameters: team_id, user_id. Send the request body as JSON; Grafana documents these fields: permission. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_team_preferences details
grafana_update_team_preferences details
[Grafana] Update Team Preferences. PUT /api/teams//preferences. Path parameters: team_id. Send the request body as JSON; Grafana documents these fields: homeDashboardId, homeDashboardUID, language, navbar, queryHistory, theme, timezone, weekStart. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Users
grafana_get_user_by_id details
grafana_get_user_by_id details
[Grafana] Get user by id. GET /api/users/. Path parameters: user_id. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_user_by_login_or_email details
grafana_get_user_by_login_or_email details
[Grafana] Get user by login or email. GET /api/users/lookup. Optional filters: loginOrEmail. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_user_org_list details
grafana_get_user_org_list details
[Grafana] Get organizations for user. GET /api/users//orgs. Path parameters: user_id. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_user_teams details
grafana_get_user_teams details
[Grafana] Get teams for user. GET /api/users//teams. Path parameters: user_id. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_search_users details
grafana_search_users details
[Grafana] Get users. GET /api/users. Optional filters: perpage, page. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_search_users_with_paging details
grafana_search_users_with_paging details
[Grafana] Get users with paging. GET /api/users/search. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_user details
grafana_update_user details
[Grafana] Update user. PUT /api/users/. Path parameters: user_id. Send the request body as JSON; Grafana documents these fields: email, login, name, theme. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Service accounts
grafana_create_service_account details
grafana_create_service_account details
[Grafana] Create service account. POST /api/serviceaccounts. Send the request body as JSON; Grafana documents these fields: isDisabled, name, role. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_create_token details
grafana_create_token details
[Grafana] DESTRUCTIVE: mint a new service account token. POST /api/serviceaccounts//tokens. The token that comes back is a LIVE Grafana credential with the full authority of that service account's role, it keeps working long after this conversation ends, and Grafana shows it exactly once - it cannot be retrieved again. Send {name, secondsToLive}; omit secondsToLive and the token never expires. Treat the response as a secret: it is one. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_service_account details
grafana_delete_service_account details
[Grafana] DESTRUCTIVE: delete service account. It deletes the service account AND every token under it, so anything authenticating with one of those tokens stops working immediately. DELETE /api/serviceaccounts/. Path parameters: serviceAccountId. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_token details
grafana_delete_token details
[Grafana] DESTRUCTIVE: revoke a service account token. DELETE /api/serviceaccounts//tokens/. Anything still authenticating with that token stops working immediately and with no warning - which may include StackJack's own connection to this Grafana. List them with grafana_list_tokens and check what the token is named before revoking it. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_list_tokens details
grafana_list_tokens details
[Grafana] Get service account tokens. GET /api/serviceaccounts//tokens. Path parameters: serviceAccountId. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_retrieve_service_account details
grafana_retrieve_service_account details
[Grafana] Get single serviceaccount by Id. GET /api/serviceaccounts/. Path parameters: serviceAccountId. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_search_service_accounts details
grafana_search_service_accounts details
[Grafana] Search service accounts with paging. GET /api/serviceaccounts/search. Optional filters: Disabled, expiredTokens, query, perpage, page. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_service_account details
grafana_update_service_account details
[Grafana] Update service account. PATCH /api/serviceaccounts/. Path parameters: serviceAccountId. Send the request body as JSON; Grafana documents these fields: isDisabled, name, role, serviceAccountId. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Resource permissions
grafana_get_resource_description details
grafana_get_resource_description details
[Grafana] Get a description of a resource's access control properties. GET /api/access-control//description. Path parameters: resource. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_resource_permissions details
grafana_get_resource_permissions details
[Grafana] Get permissions for a resource. GET /api/access-control//. Path parameters: resource, resourceID. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_set_resource_permissions details
grafana_set_resource_permissions details
[Grafana] DESTRUCTIVE: set resource permissions. It REPLACES every permission on that dashboard, folder, data source or service account with the set you send. Any user, team or built-in role you leave out loses its access, which on a folder means the dashboards and alert rules inside it too. Read the current permissions with grafana_get_resource_permissions first and send them all back. POST /api/access-control//. Path parameters: resource, resourceID. Send the request body as JSON; Grafana documents these fields: permissions. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_set_resource_permissions_for_built_in_role details
grafana_set_resource_permissions_for_built_in_role details
[Grafana] Set resource permissions for a built-in role. POST /api/access-control///builtInRoles/. Path parameters: resource, resourceID, builtInRole. Send the request body as JSON; Grafana documents these fields: permission. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_set_resource_permissions_for_team details
grafana_set_resource_permissions_for_team details
[Grafana] Set resource permissions for a team. POST /api/access-control///teams/. Path parameters: resource, resourceID, teamID. Send the request body as JSON; Grafana documents these fields: permission. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_set_resource_permissions_for_user details
grafana_set_resource_permissions_for_user details
[Grafana] Set resource permissions for a user. POST /api/access-control///users/. Path parameters: resource, resourceID, userID. Send the request body as JSON; Grafana documents these fields: permission. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Role assignments
grafana_add_team_role details
grafana_add_team_role details
[Grafana] Add team role. POST /api/access-control/teams//roles. Path parameters: teamId. Send the request body as JSON; Grafana documents these fields: roleUid. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_add_user_role details
grafana_add_user_role details
[Grafana] Add a user role assignment. POST /api/access-control/users//roles. Path parameters: userId. Send the request body as JSON; Grafana documents these fields: global, roleUid. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_list_team_roles details
grafana_list_team_roles details
[Grafana] Get team roles. GET /api/access-control/teams//roles. Path parameters: teamId. Optional filters: targetOrgId. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_list_teams_roles details
grafana_list_teams_roles details
[Grafana] List roles assigned to multiple teams. POST /api/access-control/teams/roles/search. Send the request body as JSON; Grafana documents these fields: includeHidden, orgId, teamIds, userIds. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_list_user_roles details
grafana_list_user_roles details
[Grafana] List roles assigned to a user. GET /api/access-control/users//roles. Path parameters: userId. Optional filters: includeHidden, targetOrgId. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_list_users_roles details
grafana_list_users_roles details
[Grafana] List roles assigned to multiple users. POST /api/access-control/users/roles/search. Send the request body as JSON; Grafana documents these fields: includeHidden, orgId, teamIds, userIds. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_remove_team_role details
grafana_remove_team_role details
[Grafana] DESTRUCTIVE: remove team role. It changes who can see or change what. Permission changes are easy to miss and hard to trace back afterwards. DELETE /api/access-control/teams//roles/. Path parameters: roleUID, teamId. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_remove_user_role details
grafana_remove_user_role details
[Grafana] DESTRUCTIVE: remove a user role assignment. It changes who can see or change what. Permission changes are easy to miss and hard to trace back afterwards. DELETE /api/access-control/users//roles/. Path parameters: roleUID, userId. Optional filters: global. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_set_team_roles details
grafana_set_team_roles details
[Grafana] DESTRUCTIVE: update team role. It REPLACES the team's whole role assignment list with the one you send. Every role you leave out is unassigned from the team, so everyone in it loses what that role granted. Read the current roles first and send them all back. PUT /api/access-control/teams//roles. Path parameters: teamId. Optional filters: targetOrgId. Send the request body as JSON; Grafana documents these fields: includeHidden, roleUids. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_set_user_roles details
grafana_set_user_roles details
[Grafana] DESTRUCTIVE: set user role assignments. It REPLACES the user's whole role assignment list with the one you send. Every role you leave out is unassigned, so the same call that grants one role can take away access to dashboards, folders and data sources. Read the current roles first and send them all back. PUT /api/access-control/users//roles. Path parameters: userId. Optional filters: targetOrgId. Send the request body as JSON; Grafana documents these fields: global, includeHidden, roleUids. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Roles
grafana_create_role details
grafana_create_role details
[Grafana] Create a new custom role. POST /api/access-control/roles. Send the request body as JSON; Grafana documents these fields: description, displayName, global, group, hidden, name, permissions, uid. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_role details
grafana_delete_role details
[Grafana] DESTRUCTIVE: delete a custom role. It changes who can see or change what. Permission changes are easy to miss and hard to trace back afterwards. DELETE /api/access-control/roles/. Path parameters: roleUID. Optional filters: force, global. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_access_control_status details
grafana_get_access_control_status details
[Grafana] Get status. GET /api/access-control/status. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_role details
grafana_get_role details
[Grafana] Get a role. GET /api/access-control/roles/. Path parameters: roleUID. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_role_assignments details
grafana_get_role_assignments details
[Grafana] Get role assignments. GET /api/access-control/roles//assignments. Path parameters: roleUID. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_list_roles details
grafana_list_roles details
[Grafana] Get all roles. GET /api/access-control/roles. Optional filters: delegatable, includeHidden, targetOrgId. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_set_role_assignments details
grafana_set_role_assignments details
[Grafana] DESTRUCTIVE: set role assignments. It REPLACES the whole set of users and teams this role is assigned to. Anyone you leave out loses the role, and with it everything the role granted them. Read the current assignments first and send them all back. PUT /api/access-control/roles//assignments. Path parameters: roleUID. Send the request body as JSON; Grafana documents these fields: service_accounts, teams, users. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_role details
grafana_update_role details
[Grafana] Update a custom role. PUT /api/access-control/roles/. Path parameters: roleUID. Send the request body as JSON; Grafana documents these fields: description, displayName, global, group, hidden, name, permissions. Required: description, displayName, group. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Reporting
grafana_create_report details
grafana_create_report details
[Grafana] Create a report. POST /api/reports. Send the request body as JSON; Grafana documents these fields: dashboards, enableCsv, enableDashboardUrl, formats, message, name, options, recipients, replyTo, scaleFactor, schedule, state. Grafana documents 2 more fields; the bodyJson parameter lists all of them. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_report details
grafana_delete_report details
[Grafana] DESTRUCTIVE: delete a report. It deletes the resource outright, and Grafana does not undo this. DELETE /api/reports/. Path parameters: id. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_report details
grafana_get_report details
[Grafana] Get a report. GET /api/reports/. Path parameters: id. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_report_branding_image details
grafana_get_report_branding_image details
[Grafana] Download a branding image stored for reports - the logo that appears on a rendered report or in the email that carries it. GET /api/reports/images/:image. The image value comes from the report settings: grafana_get_report_settings returns branding.reportLogoUrl and branding.emailLogoUrl, and it is sent as one path segment exactly as given. Grafana's own specification does not declare this placeholder, so whether it wants a bare file name, a relative path or the whole URL is unverified against a live instance - if one form is refused, try the value as the settings gave it and then its last segment. StackJack uploads whatever Grafana answers with and returns a short-lived read-only download link valid for 30 minutes, with its content type, size and exact expiry; if this deployment has no blob storage configured the call fails loudly rather than handing back a dead link. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance.
grafana_get_report_settings details
grafana_get_report_settings details
[Grafana] Get report settings. GET /api/reports/settings. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_reports details
grafana_get_reports details
[Grafana] List reports. GET /api/reports. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_reports_by_dashboard_uid details
grafana_get_reports_by_dashboard_uid details
[Grafana] List reports by dashboard uid. GET /api/reports/dashboards/. Path parameters: uid. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_render_report_csvs details
grafana_render_report_csvs details
[Grafana] Render the table panels of one or more dashboards as CSV and get a download link back. GET /api/reports/render/csvs. Name the dashboards with the dashboards filter and the report with title. The file Grafana returns is a ZIP archive holding one CSV per panel, not a single CSV. StackJack uploads it and returns a short-lived read-only download link valid for 30 minutes, with its content type, size and exact expiry - the file itself is never inlined. If no dashboard in the request holds a table panel with rows, Grafana answers with nothing at all and this tool tells you so rather than handing back a link to an empty file. If this StackJack deployment has no blob storage configured the call fails loudly. It is a paid-tier tool although it only reads, because the render is real work for the instance. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance.
grafana_render_report_pdfs details
grafana_render_report_pdfs details
[Grafana] Render one or more dashboards as a PDF report and get a download link back. GET /api/reports/render/pdfs. Name the dashboards with the dashboards filter and shape the output with orientation, layout, title, scaleFactor and includeTables. Grafana answers this route with a FILE rather than JSON, so StackJack uploads it and returns a short-lived read-only download link valid for 30 minutes, with its content type, size and exact expiry - the PDF itself is never inlined. If this StackJack deployment has no blob storage configured the call fails loudly rather than handing back a dead link. It is a paid-tier tool although it only reads: a render drives Grafana's image renderer across every panel of every dashboard named, which is the most expensive thing this API can be asked to do. Grafana Enterprise or Grafana Cloud only, and the image renderer must be installed; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance.
grafana_save_report_settings details
grafana_save_report_settings details
[Grafana] Save settings. POST /api/reports/settings. Send the request body as JSON; Grafana documents these fields: branding, embeddedImageTheme, footerFontFamily, footerItems, id, orgId, pdfDashboardTitleEnabled, pdfHeaderEnabled, pdfTheme, pdfTimeRangeEnabled, userId. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_send_report details
grafana_send_report details
[Grafana] Send a report. POST /api/reports/email. Send the request body as JSON; Grafana documents these fields: emails, id, useEmailsFromReport. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_send_test_email details
grafana_send_test_email details
[Grafana] Send test report via email. POST /api/reports/test-email. Send the request body as JSON; Grafana documents these fields: dashboards, enableCsv, enableDashboardUrl, formats, message, name, options, recipients, replyTo, scaleFactor, schedule, state. Grafana documents 2 more fields; the bodyJson parameter lists all of them. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_report details
grafana_update_report details
[Grafana] Update a report. PUT /api/reports/. Path parameters: id. Send the request body as JSON; Grafana documents these fields: dashboards, enableCsv, enableDashboardUrl, formats, message, name, options, recipients, replyTo, scaleFactor, schedule, state. Grafana documents 2 more fields; the bodyJson parameter lists all of them. DEPRECATED from Grafana 13 by the vendor's own spec, and still the only documented way to do this - Grafana says legacy routes are not being switched off yet and any removal will be announced in advance. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Anonymous devices
grafana_list_anonymous_devices details
grafana_list_anonymous_devices details
[Grafana] List the devices that viewed this Grafana WITHOUT signing in, over the last 30 days. GET /api/anonymous/devices. Grafana counts an anonymous viewer as a device (a browser on a machine), and this is how you see how much of your traffic is unauthenticated - which is what Grafana Cloud bills anonymous usage on. The vendor declares NO paging parameters on this route, so the whole 30-day collection comes back in one response and a busy public instance can make that large. Returns raw Grafana JSON.
grafana_search_anonymous_devices details
grafana_search_anonymous_devices details
[Grafana] Search the anonymous devices that viewed this Grafana in the last 30 days. GET /api/anonymous/search. Grafana gives this route and grafana_list_anonymous_devices the same one-line summary and declares no parameters on either, so they differ only in the response envelope the vendor builds - call the list first and use this one if you need what it adds. There are NO paging parameters here either: the whole collection comes back. Returns raw Grafana JSON.
Instance health
grafana_get_health details
grafana_get_health details
[Grafana] Read the instance's health - its version, commit and whether its own database is reachable. GET /api/health. Grafana answers this route WITHOUT authentication, so a success here proves only that something is listening at the address, NOT that the service account token is any good. To check the credential, call grafana_get_current_org instead; that is also what StackJack's own connection test uses, for exactly this reason. Returns raw Grafana JSON.
Instance settings
grafana_admin_get_settings details
grafana_admin_get_settings details
[Grafana] Fetch settings. GET /api/admin/settings. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_admin_get_stats details
grafana_admin_get_stats details
[Grafana] Fetch Grafana Stats. GET /api/admin/stats. Returns raw Grafana JSON.
grafana_retrieve_jwks details
grafana_retrieve_jwks details
[Grafana] Read the instance's JSON Web Key Set - the PUBLIC keys anything verifying a Grafana-minted token needs. GET /api/signing-keys/keys. These are verification keys, not credentials: no private key is ever in this body, and Grafana documents the route's required permissions as None. Use it when something outside Grafana has to check that a token Grafana issued is genuine. Returns raw Grafana JSON.
Instance users
grafana_admin_create_user details
grafana_admin_create_user details
[Grafana] DESTRUCTIVE: create new user. It creates a Grafana user with a password you supply, which is a credential mint: whoever holds that password can sign in as them. POST /api/admin/users. Send the request body as JSON; Grafana documents these fields: email, login, name, orgId, password. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_admin_delete_user details
grafana_admin_delete_user details
[Grafana] DESTRUCTIVE: delete a Grafana user outright. DELETE /api/admin/users/. This is a real person's account: their dashboards, their starred items, their API history and their membership of every organization go with it, and Grafana does not undo it. If the intent is offboarding rather than erasure, grafana_admin_disable_user keeps the account and its content while stopping sign-in, and grafana_remove_org_user takes them out of one organization only. The header that picks an organization is ignored on this route by design - it acts on the whole instance. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_admin_disable_user details
grafana_admin_disable_user details
[Grafana] DESTRUCTIVE: disable user. It turns a real person's access to Grafana off or on. A disabled user cannot sign in and their sessions end. POST /api/admin/users//disable. Path parameters: user_id. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_admin_enable_user details
grafana_admin_enable_user details
[Grafana] DESTRUCTIVE: enable user. It turns a real person's access to Grafana off or on. A disabled user cannot sign in and their sessions end. POST /api/admin/users//enable. Path parameters: user_id. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_admin_get_user_auth_tokens details
grafana_admin_get_user_auth_tokens details
[Grafana] Return a list of all auth tokens (devices) that the user currently have logged in from. GET /api/admin/users//auth-tokens. Path parameters: user_id. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_admin_logout_user details
grafana_admin_logout_user details
[Grafana] DESTRUCTIVE: logout user revokes all auth tokens (devices) for the user. User of issued auth tokens (devices) will no longer be logged in and will be required to authenticate again upon next activity. It ends a real person's live Grafana sessions immediately. They are signed out wherever they are working. POST /api/admin/users//logout. Path parameters: user_id. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_admin_revoke_user_auth_token details
grafana_admin_revoke_user_auth_token details
[Grafana] DESTRUCTIVE: revoke auth token for user. It ends a real person's live Grafana sessions immediately. They are signed out wherever they are working. POST /api/admin/users//revoke-auth-token. Path parameters: user_id. Send the request body as JSON; Grafana documents these fields: authTokenId. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_admin_update_user_password details
grafana_admin_update_user_password details
[Grafana] DESTRUCTIVE: set password for user. It replaces a real person's sign-in password. They are not told, and their old password stops working immediately. PUT /api/admin/users//password. Path parameters: user_id. Send the request body as JSON; Grafana documents these fields: password. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_admin_update_user_permissions details
grafana_admin_update_user_permissions details
[Grafana] DESTRUCTIVE: set permissions for user. It grants or removes INSTANCE ADMINISTRATOR authority over the whole Grafana, every organization in it included. PUT /api/admin/users//permissions. Path parameters: user_id. Send the request body as JSON; Grafana documents these fields: isGrafanaAdmin. Returns raw Grafana JSON.
LDAP
grafana_get_ldap_status details
grafana_get_ldap_status details
[Grafana] Attempts to connect to all the configured LDAP servers and returns information on whenever they're available or not. GET /api/admin/ldap/status. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_get_sync_status details
grafana_get_sync_status details
[Grafana] Returns the current state of the LDAP background sync integration. GET /api/admin/ldap-sync-status. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Returns raw Grafana JSON.
grafana_get_user_from_ldap details
grafana_get_user_from_ldap details
[Grafana] Finds an user based on a username in LDAP. This helps illustrate how would the particular user be mapped in Grafana when synced. GET /api/admin/ldap/. Path parameters: user_name. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_post_sync_user_with_ldap details
grafana_post_sync_user_with_ldap details
[Grafana] DESTRUCTIVE: enables a single Grafana user to be synchronized against LDAP. It re-synchronizes a real person's account from LDAP, which can change their organization membership, their role, and whether they can sign in at all. POST /api/admin/ldap/sync/. Path parameters: user_id. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_reload_ldap_cfg details
grafana_reload_ldap_cfg details
[Grafana] DESTRUCTIVE: reloads the LDAP configuration. It reloads the instance's LDAP configuration, which changes how everyone authenticates. POST /api/admin/ldap/reload. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
Provisioning reload
grafana_admin_provisioning_reload_access_control details
grafana_admin_provisioning_reload_access_control details
[Grafana] DESTRUCTIVE: you need to have a permission with action `provisioning:reload` with scope `provisioners:accesscontrol`. It makes Grafana re-read provisioned configuration from disk, DISCARDING any in-instance change anyone made to a provisioned dashboard, data source, plugin or notifier. POST /api/admin/provisioning/access-control/reload. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Returns raw Grafana JSON.
grafana_admin_provisioning_reload_dashboards details
grafana_admin_provisioning_reload_dashboards details
[Grafana] DESTRUCTIVE: reload dashboard provisioning configurations. It makes Grafana re-read provisioned configuration from disk, DISCARDING any in-instance change anyone made to a provisioned dashboard, data source, plugin or notifier. POST /api/admin/provisioning/dashboards/reload. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_admin_provisioning_reload_datasources details
grafana_admin_provisioning_reload_datasources details
[Grafana] DESTRUCTIVE: reload datasource provisioning configurations. It makes Grafana re-read provisioned configuration from disk, DISCARDING any in-instance change anyone made to a provisioned dashboard, data source, plugin or notifier. POST /api/admin/provisioning/datasources/reload. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
grafana_admin_provisioning_reload_plugins details
grafana_admin_provisioning_reload_plugins details
[Grafana] DESTRUCTIVE: reload plugin provisioning configurations. It makes Grafana re-read provisioned configuration from disk, DISCARDING any in-instance change anyone made to a provisioned dashboard, data source, plugin or notifier. POST /api/admin/provisioning/plugins/reload. Returns raw Grafana JSON. Grafana's own API specification marks this route as Basic-authentication only, so it needs the Grafana server administrator's username and password saved on the connection - the two optional fields in the connector's Configure dialog; the service account token cannot call it and no service account role changes that. Without that pair StackJack refuses this call before anything is sent to Grafana.
SSO settings
grafana_get_provider_settings details
grafana_get_provider_settings details
[Grafana] Get an SSO Settings entry by Key. GET /api/v1/sso-settings/. Path parameters: key. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_get_saml_metadata details
grafana_get_saml_metadata details
[Grafana] Read this Grafana's SAML service-provider metadata - the XML an identity provider needs to trust it. GET /api/saml/metadata. This is the document you hand to Entra ID, Okta or ADFS when you register Grafana as an application: it carries the entity id, the assertion consumer service URL and the signing certificate. It is a configuration READ; the SAML callbacks themselves are browser redirects and are not tools. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Returns the XML document Grafana answers with, verbatim - not JSON.
grafana_list_all_providers_settings details
grafana_list_all_providers_settings details
[Grafana] List all SSO Settings entries. GET /api/v1/sso-settings. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_patch_provider_settings details
grafana_patch_provider_settings details
[Grafana] Patch SSO Settings. PATCH /api/v1/sso-settings/. Path parameters: key. Send the request body as JSON; Grafana documents these fields: settings. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_remove_provider_settings details
grafana_remove_provider_settings details
[Grafana] DESTRUCTIVE: remove SSO Settings. It changes how people sign in to Grafana. A wrong value can lock every user out of the instance. DELETE /api/v1/sso-settings/. Path parameters: key. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_update_provider_settings details
grafana_update_provider_settings details
[Grafana] Update SSO Settings. PUT /api/v1/sso-settings/. Path parameters: key. Send the request body as JSON; Grafana documents these fields: id, provider, settings. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
Cloud migration
grafana_cancel_cloud_migration_snapshot details
grafana_cancel_cloud_migration_snapshot details
[Grafana] Cancel a migration snapshot wherever it is in its processing chain. POST /api/cloudmigration/migration//snapshot//cancel. Use it to stop a snapshot that is still building or still uploading; anything already delivered to Grafana Cloud stays delivered, so cancelling mid-upload leaves a partial migration rather than undoing one. Needs Grafana's onPremToCloudMigrations feature toggle. Returns raw Grafana JSON.
grafana_create_cloud_migration_session details
grafana_create_cloud_migration_session details
[Grafana] Start a Grafana Cloud migration session on this instance. POST /api/cloudmigration/migration. Send : that value is a Grafana Cloud MIGRATION TOKEN generated in the destination cloud stack (Administration, then Migrate to Grafana Cloud), and it is a live credential for that stack - treat it the way you treat the Grafana token this connection uses, and do not paste one into a conversation you would not paste a password into. Creating the session moves nothing on its own: it records where a migration would go. Needs Grafana's onPremToCloudMigrations feature toggle. Returns raw Grafana JSON.
grafana_create_cloud_migration_snapshot details
grafana_create_cloud_migration_snapshot details
[Grafana] Take a snapshot of this instance's migratable content for a migration session. POST /api/cloudmigration/migration//snapshot. Send to limit what is captured; omit it for everything Grafana knows how to move. The snapshot is built and held ON THIS INSTANCE - nothing leaves until grafana_upload_cloud_migration_snapshot sends it - so this is the safe half of the move and the place to check what would be shipped. Get the session uid from grafana_get_cloud_migration_sessions. Needs Grafana's onPremToCloudMigrations feature toggle. Returns raw Grafana JSON.
grafana_create_cloud_migration_token details
grafana_create_cloud_migration_token details
[Grafana] DESTRUCTIVE: mint a Grafana Cloud access token on this instance. POST /api/cloudmigration/token. Grafana generates the token and returns it, which makes this a CREDENTIAL MINT: the value that comes back is live, it keeps working long after this conversation ends, and anything holding it can move this instance's dashboards, data sources and users into the cloud stack it belongs to. Treat the response as a secret - it is one. Needs Grafana's onPremToCloudMigrations feature toggle. Returns raw Grafana JSON.
grafana_delete_cloud_migration_session details
grafana_delete_cloud_migration_session details
[Grafana] DESTRUCTIVE: delete a Grafana Cloud migration session. DELETE /api/cloudmigration/migration/. It takes the session's snapshots with it, so the record of what was migrated and any snapshot not yet uploaded are gone, and Grafana does not undo this. It does NOT remove anything already uploaded into the cloud stack - that has to be dealt with in the stack itself. Needs Grafana's onPremToCloudMigrations feature toggle. Returns raw Grafana JSON.
grafana_delete_cloud_migration_token details
grafana_delete_cloud_migration_token details
[Grafana] DESTRUCTIVE: revoke a Grafana Cloud migration token. DELETE /api/cloudmigration/token/. Any migration still using that token stops working immediately and with no warning, and Grafana cannot bring the same token back - a new one has to be minted and configured. Needs Grafana's onPremToCloudMigrations feature toggle. Returns raw Grafana JSON.
grafana_get_cloud_migration_dependencies details
grafana_get_cloud_migration_dependencies details
[Grafana] Read the dependency graph of everything this instance could migrate to Grafana Cloud. GET /api/cloudmigration/resources/dependencies. It is what tells you that moving a dashboard means moving the data source it queries, so it is the read to make before deciding what a snapshot should contain. The vendor declares NO parameters and NO paging, so the whole graph comes back in one response and a large instance makes that large. Needs Grafana's onPremToCloudMigrations feature toggle. Returns raw Grafana JSON.
grafana_get_cloud_migration_session details
grafana_get_cloud_migration_session details
[Grafana] Read one Grafana Cloud migration session by its uid. GET /api/cloudmigration/migration/. It tells you where the migration points and what state it is in; the snapshots taken under it are listed by grafana_get_cloud_migration_snapshots. Get the uid from grafana_get_cloud_migration_sessions. Needs Grafana's onPremToCloudMigrations feature toggle. Returns raw Grafana JSON.
grafana_get_cloud_migration_sessions details
grafana_get_cloud_migration_sessions details
[Grafana] List the Grafana Cloud migration sessions on this instance. GET /api/cloudmigration/migration. A session is one configured move of this self-hosted Grafana's content into a Grafana Cloud stack; its uid is what every other cloud-migration tool takes. The vendor declares NO paging parameters, so every session comes back in one response. The whole family sits behind Grafana's onPremToCloudMigrations feature toggle, so a 404 on an instance that has it switched off is a configuration fact, not a bad address. Returns raw Grafana JSON.
grafana_get_cloud_migration_snapshot details
grafana_get_cloud_migration_snapshot details
[Grafana] Read one migration snapshot - where it is in its processing chain and what it found. GET /api/cloudmigration/migration//snapshot/. This is the read that tells you WHAT WOULD BE SENT before an upload, and what happened after one. Its result rows page with resultPage plus resultLimit rather than the usual page plus limit, numbered from 1 and capped at 1000 by StackJack; errorsOnly narrows it to the resources that failed. Needs Grafana's onPremToCloudMigrations feature toggle. Returns raw Grafana JSON.
grafana_get_cloud_migration_snapshots details
grafana_get_cloud_migration_snapshots details
[Grafana] List the snapshots taken under one migration session. GET /api/cloudmigration/migration//snapshots. Paging is page plus limit, numbered from 1 and capped at 1000 by StackJack. Get the session uid from grafana_get_cloud_migration_sessions, then read one snapshot in full with grafana_get_cloud_migration_snapshot. Needs Grafana's onPremToCloudMigrations feature toggle. Returns raw Grafana JSON.
grafana_get_cloud_migration_token details
grafana_get_cloud_migration_token details
[Grafana] Read the Grafana Cloud migration token stored on this instance, if one exists. GET /api/cloudmigration/token. TREAT THE RESPONSE AS A CREDENTIAL: the body carries the access token itself, not a description of one, and anything holding it can pull this instance's content into the cloud stack that issued it. Do not echo it into a ticket, a chat message or a document. Needs Grafana's onPremToCloudMigrations feature toggle. Returns raw Grafana JSON.
grafana_upload_cloud_migration_snapshot details
grafana_upload_cloud_migration_snapshot details
[Grafana] DESTRUCTIVE: send a snapshot of this Grafana to Grafana Cloud. POST /api/cloudmigration/migration//snapshot//upload. The snapshot is a copy of the instance's dashboards, its data sources (their names and settings) and its users, and the upload moves that content out of the customer's own Grafana onto Grafana's infrastructure over the link the migration token authorizes. Nothing in Grafana un-sends it, and the receiving stack is not this connection's to clean up. Check what is in the snapshot with grafana_get_cloud_migration_snapshot before uploading. Needs Grafana's onPremToCloudMigrations feature toggle. Returns raw Grafana JSON.
Licensing
grafana_delete_license_token details
grafana_delete_license_token details
[Grafana] DESTRUCTIVE: remove the Enterprise license from this Grafana's database. DELETE /api/licensing/token. The instance drops to open-source behaviour: reporting, recording rules, role-based access control, team sync and data source caching stop for every organization on it, and the only way back is installing a license token again. Grafana documents a request body on this DELETE - send it as JSON with the field instance. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Returns raw Grafana JSON.
grafana_get_custom_permissions_csv details
grafana_get_custom_permissions_csv details
[Grafana] Read the custom permissions report as a CSV file's worth of text. GET /api/licensing/custom-permissions-csv. Same content as grafana_get_custom_permissions_report, in the shape a spreadsheet opens. Needs a role carrying the licensing.reports:read action. DEPRECATED by Grafana with NO replacement; the vendor asks anyone relying on it to contact Grafana support. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Returns the report as CSV text, verbatim - not JSON.
grafana_get_custom_permissions_report details
grafana_get_custom_permissions_report details
[Grafana] Read the custom permissions report - where role-based access control permissions on this instance differ from Grafana's built-in roles. GET /api/licensing/custom-permissions. Needs a role carrying the licensing.reports:read action. DEPRECATED by Grafana with NO replacement; the vendor asks anyone relying on it to contact Grafana support. Grafana's specification declares only a 500 response for this route and documents no success body at all, so what a working instance actually answers is unverified - a failure here is as likely to be the vendor's own gap as a broken connection. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Returns raw Grafana JSON.
grafana_get_license_status details
grafana_get_license_status details
[Grafana] Check whether this Grafana has a valid Enterprise license and what it allows. GET /api/licensing/check. Cheap, takes no parameters, and it is the read to make first when an Enterprise-only tool - reporting, recording rules, role-based access control, team sync, data source caching - is refusing calls: it tells you whether the license or the role is the problem. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Returns raw Grafana JSON.
grafana_get_license_token details
grafana_get_license_token details
[Grafana] Read the Enterprise license token installed on this Grafana. GET /api/licensing/token. TREAT THE RESPONSE AS A CREDENTIAL: the body carries the license token itself, which is the material that licenses the instance, not a description of it. Use it to confirm which license is installed; do not echo it into a ticket, a chat message or a document. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Returns raw Grafana JSON.
grafana_post_license_token details
grafana_post_license_token details
[Grafana] DESTRUCTIVE: install an Enterprise license token on this Grafana. POST /api/licensing/token. Send the body as JSON; Grafana documents one field, instance. This REPLACES whatever license the instance is running on, which changes what every organization on it may use - reporting, recording rules, role-based access control and team sync all stop when the license does - and the response carries the resulting token, so treat it as a secret. There is no undo beyond installing the previous token again. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Returns raw Grafana JSON.
grafana_post_renew_license_token details
grafana_post_renew_license_token details
[Grafana] DESTRUCTIVE: force this Grafana to renew its Enterprise license token now. POST /api/licensing/token/renew. Grafana re-fetches the token from its licensing service and replaces the stored one, so a renewal that fails can leave the instance without a working license until it is fixed, and the response carries the refreshed token - treat it as a secret. Grafana declares a request body for this route whose schema has no fields at all, so StackJack sends none; if your instance refuses the call, send an empty object, . Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Returns raw Grafana JSON.
grafana_refresh_license_stats details
grafana_refresh_license_stats details
[Grafana] Refresh and read this instance's license usage statistics - the seat and user counts Grafana measures an Enterprise license against. GET /api/licensing/refresh-stats. Grafana RECOMPUTES the numbers as it answers, so despite the GET this tool is NOT marked read-only: a harness restricted to read-only tools should not be able to trigger a recount. Nothing else about it moves. It is explicitly NOT destructive - the recount is idempotent, it changes no customer data and it deletes nothing - and it stays on the Free plan with the vendor's own required permission, licensing:read, because the only thing it rewrites is Grafana's own cached counters. Grafana Enterprise or Grafana Cloud only; an open-source instance refuses this with a 403 or 404 however good the token is. Returns raw Grafana JSON.
Query history
grafana_add_query_to_history details
grafana_add_query_to_history details
[Grafana] Save a query into the signed-in user's query history. POST /api/query-history. Send the body as JSON with datasourceUid and queries; queries is required and holds the data source's own query objects, the same shape grafana_query_metrics_with_expressions takes. This records a query for later - it does NOT run one. Grafana states that this API will not be migrated to its new APIs and that the functionality is being deprecated. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_delete_query_history_entry details
grafana_delete_query_history_entry details
[Grafana] DESTRUCTIVE: delete a saved query from query history. DELETE /api/query-history/. The vendor states plainly that this operation cannot be reverted: the query text, the data source it named and any comment on it go together. To stop a query showing in the starred list without losing it, use grafana_unstar_query instead. Grafana states that this API will not be migrated to its new APIs and that the functionality is being deprecated. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_patch_query_comment details
grafana_patch_query_comment details
[Grafana] Change the comment on a saved query in query history. PATCH /api/query-history/. Send the body as JSON with one field, comment; it replaces whatever comment is there. Nothing about the query itself changes. Grafana states that this API will not be migrated to its new APIs and that the functionality is being deprecated. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_search_queries details
grafana_search_queries details
[Grafana] Search the signed-in user's query history - the queries run against data sources, with their comments and stars. GET /api/query-history. Filter with datasourceUid (comma-separate several), searchString, onlyStarred, sort and a from/to window in epoch seconds; paging is page plus limit, numbered from 1 and capped at 1000 by StackJack. History is PER USER, so this returns what the service account itself has run, not what people did in the Grafana UI. Grafana states that this API will not be migrated to its new APIs and that the functionality is being deprecated - it works today, but do not build anything long-lived on it. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_star_query details
grafana_star_query details
[Grafana] Star a saved query in query history so it can be found with the onlyStarred filter. POST /api/query-history/star/. Reversible with grafana_unstar_query. Grafana states that this API will not be migrated to its new APIs and that the functionality is being deprecated. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
grafana_unstar_query details
grafana_unstar_query details
[Grafana] DESTRUCTIVE: remove the star from a saved query in query history. DELETE /api/query-history/star/. The query itself stays in the history and can be starred again with grafana_star_query, so this one IS reversible - it carries the destructive flag because every DELETE in this connector does, which is the same rule that already covers grafana_unstar_dashboard_by_uid. Grafana states that this API will not be migrated to its new APIs and that the functionality is being deprecated. Pass orgId to act on a specific Grafana organization inside the instance. Returns raw Grafana JSON.
More in Tools Reference
Atera ToolsAuvik ToolsAvanan (Check Point Harmony Email) ToolsConnectWise Sell ToolsStill need help? Ask the team