Connectors
Cloud Infrastructure & DevOps
Grafana
Visualization and alerting: dashboards, alerts, annotations, and data source management
Grafana API referenceAPI checked August 17, 2026
- Signs in with
- Connection fields
- Runs on
- Cloud or On-Prem Worker
- Operations
- 314
- Ready-made triggers
- 0
Connect Grafana
- In Neblex open Connect › Connections and click New Connection.
- Search for Grafana and give the connection a clear name.
- Fill in the fields. Secret values are encrypted and never shown again.
- Click Test, then Create Connection.
| Field | What to enter |
|---|---|
| Grafana hostRequired | Grafana instance host without a scheme or /api suffix. |
| Service account tokenOptionalSecret | Grafana service account token sent as Authorization: Bearer. |
| UsernameOptional | Grafana OSS/Enterprise Basic-auth username. |
| PasswordOptionalSecret | Grafana OSS/Enterprise Basic-auth password. |
Use it in a flow
- Open a flow, open the node library and search for Grafana.
- Drag it onto the canvas and choose an Operation and your connection.
- Map the operation's fields from earlier steps, or click Map with Matt.
- Use Test this step to see what it returns, then save.
To start a flow from Grafana without a ready-made trigger: a Poll for changes trigger can check one of its list operations on a schedule and pass on only what is new; if Grafana can send webhooks, a Webhook trigger receives them at its own URL.
Operations
314 operations in 35 groups. Each one is a step you can add to a flow.
access_control24
Add a user role assignment.addUserRole | POST | Assign a role to a specific user. |
Add team role.addTeamRole | POST | You need to have a permission with action teams.roles:add and scope permissions:type:delegate. |
Create a new custom role.createRole | POST | Creates a new custom role and maps given permissions to that role. |
Delete a custom role.deleteRole | DELETE | Delete a role with the given UID, and it’s permissions. |
Get a description of a resource's access control properties.getResourceDescription | GET | Get a description of a resource's access control properties. |
Get a role.getRole | GET | Get a role for the given UID. |
Get all roles.listRoles | GET | Gets all existing roles. |
Get permissions for a resource.getResourcePermissions | GET | Get permissions for a resource. |
Get role assignments.getRoleAssignments | GET | Get role assignments for the role with the given UID. |
Get status.getAccessControlStatus | GET | Returns an indicator to check if fine-grained access control is enabled or not. |
Get team roles.listTeamRoles | GET | You need to have a permission with action teams.roles:read and scope teams:id: . |
List roles assigned to a user.listUserRoles | GET | Lists the roles that have been directly assigned to a given user. |
List roles assigned to multiple teams.listTeamsRoles | POST | Lists the roles that have been directly assigned to the given teams. |
List roles assigned to multiple users.listUsersRoles | POST | Lists the roles that have been directly assigned to the given users. |
Remove a user role assignment.removeUserRole | DELETE | Revoke a role from a user. |
Remove team role.removeTeamRole | DELETE | You need to have a permission with action teams.roles:remove and scope permissions:type:delegate. |
Set resource permissions for a built-in role.setResourcePermissionsForBuiltInRole | POST | Assigns permissions for a resource by a given type (:resource) and :resourceID to a built-in role. |
Set resource permissions for a team.setResourcePermissionsForTeam | POST | Assigns permissions for a resource by a given type (:resource) and :resourceID to a team. |
Set resource permissions for a user.setResourcePermissionsForUser | POST | Assigns permissions for a resource by a given type (:resource) and :resourceID to a user or a service account. |
Set resource permissions.setResourcePermissions | POST | Assigns permissions for a resource by a given type (:resource) and :resourceID to one or many assignment types. |
Set role assignments.setRoleAssignments | PUT | Set role assignments for the role with the given UID. |
Set user role assignments.setUserRoles | PUT | Update the user’s role assignments to match the provided set of UIDs. |
Update a custom role.updateRole | PUT | You need to have a permission with action roles:write and scope permissions:type:delegate. |
Update team role.setTeamRoles | PUT | You need to have a permission with action teams.roles:add and teams.roles:remove and scope permissions:type:delegate for each. |
admin2
Fetch Grafana Stats.adminGetStats | GET | Only works with Basic Authentication (username and password). |
Fetch settings.adminGetSettings | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action settings:read and scopes: settings: , settings:auth.saml: and... |
admin_ldap5
Attempts to connect to all the configured LDAP servers and returns information on whenever they're available or not.getLDAPStatus | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action ldap.status:read. |
Enables a single Grafana user to be synchronized against LDAP.postSyncUserWithLDAP | POST | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action ldap.user:sync. |
Finds an user based on a username in LDAP. This helps illustrate how would the particular user be mapped in Grafana when synced.getUserFromLDAP | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action ldap.user:read. |
Reloads the LDAP configuration.reloadLDAPCfg | POST | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action ldap.config:reload. |
Returns the current state of the LDAP background sync integration.getSyncStatus | GET | You need to have a permission with action ldap.status:read. |
admin_provisioning4
Reload dashboard provisioning configurations.adminProvisioningReloadDashboards | POST | Reloads the provisioning config files for dashboards again. |
Reload datasource provisioning configurations.adminProvisioningReloadDatasources | POST | Reloads the provisioning config files for datasources again. |
Reload plugin provisioning configurations.adminProvisioningReloadPlugins | POST | Reloads the provisioning config files for plugins again. |
You need to have a permission with action `provisioning:reload` with scope `provisioners:accesscontrol`.adminProvisioningReloadAccessControl | POST | You need to have a permission with action provisioning:reload with scope provisioners:accesscontrol. |
admin_users9
Create new user.adminCreateUser | POST | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action users:create. |
Delete global User.adminDeleteUser | DELETE | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action users:delete and scope global.users: . |
Disable user.adminDisableUser | POST | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action users:disable and scope global.users:1 (userIDScope). |
Enable user.adminEnableUser | POST | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action users:enable and scope global.users:1 (userIDScope). |
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.adminLogoutUser | POST | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action users.logout and scope global.users: . |
Return a list of all auth tokens (devices) that the user currently have logged in from.adminGetUserAuthTokens | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action users.authtoken:list and scope global.users: . |
Revoke auth token for user.adminRevokeUserAuthToken | POST | Revokes the given auth token (device) for the user. |
Set password for user.adminUpdateUserPassword | PUT | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action users.password:update and scope global.users: . |
Set permissions for user.adminUpdateUserPermissions | PUT | Only works with Basic Authentication (username and password). |
annotations9
Create Annotation in Graphite format.postGraphiteAnnotation | POST | Creates an annotation by using Graphite-compatible event format. |
Create Annotation.postAnnotation | POST | Creates an annotation in the Grafana database. |
Delete Annotation By ID.deleteAnnotationByID | DELETE | Deletes the annotation that matches the specified ID. |
Delete multiple annotations.massDeleteAnnotations | POST | Delete multiple annotations. |
Find Annotations Tags.getAnnotationTags | GET | Find all the event tags created in the annotations. |
Find Annotations.getAnnotations | GET | Starting in Grafana v6.4 regions annotations are now returned in one entity that now includes the timeEnd property. |
Get Annotation by ID.getAnnotationByID | GET | Get Annotation by ID. |
Patch Annotation.patchAnnotation | PATCH | Updates one or more properties of an annotation that matches the specified ID. |
Update Annotation.updateAnnotation | PUT | Updates all properties of an annotation that matches the specified id. |
convert_prometheus14
Converts a Prometheus rule group into a Grafana rule group and creates or updates it within the specified namespace.RouteConvertPrometheusCortexPostRuleGroup | POST | If the group already exists and was not imported from a Prometheus-compatible source initially, it will not be replaced and an error will be returned. |
Converts a Prometheus rule group into a Grafana rule group and creates or updates it within the specified namespace.RouteConvertPrometheusPostRuleGroup | POST | If the group already exists and was not imported from a Prometheus-compatible source initially, it will not be replaced and an error will be returned. |
Converts the submitted rule groups into Grafana-Managed Rules.RouteConvertPrometheusCortexPostRuleGroups | POST | Converts the submitted rule groups into Grafana-Managed Rules. |
Converts the submitted rule groups into Grafana-Managed Rules.RouteConvertPrometheusPostRuleGroups | POST | Converts the submitted rule groups into Grafana-Managed Rules. |
Deletes a specific rule group if it was imported from a Prometheus-compatible source.RouteConvertPrometheusCortexDeleteRuleGroup | DELETE | Deletes a specific rule group if it was imported from a Prometheus-compatible source. |
Deletes a specific rule group if it was imported from a Prometheus-compatible source.RouteConvertPrometheusDeleteRuleGroup | DELETE | Deletes a specific rule group if it was imported from a Prometheus-compatible source. |
Deletes all rule groups that were imported from Prometheus-compatible sources within the specified namespace.RouteConvertPrometheusCortexDeleteNamespace | DELETE | Deletes all rule groups that were imported from Prometheus-compatible sources within the specified namespace. |
Deletes all rule groups that were imported from Prometheus-compatible sources within the specified namespace.RouteConvertPrometheusDeleteNamespace | DELETE | Deletes all rule groups that were imported from Prometheus-compatible sources within the specified namespace. |
Gets a single rule group in Prometheus-compatible format if it was imported from a Prometheus-compatible source.RouteConvertPrometheusCortexGetRuleGroup | GET | Gets a single rule group in Prometheus-compatible format if it was imported from a Prometheus-compatible source. |
Gets a single rule group in Prometheus-compatible format if it was imported from a Prometheus-compatible source.RouteConvertPrometheusGetRuleGroup | GET | Gets a single rule group in Prometheus-compatible format if it was imported from a Prometheus-compatible source. |
Gets all Grafana-managed alert rules that were imported from Prometheus-compatible sources, grouped by namespace.RouteConvertPrometheusCortexGetRules | GET | Gets all Grafana-managed alert rules that were imported from Prometheus-compatible sources, grouped by namespace. |
Gets all Grafana-managed alert rules that were imported from Prometheus-compatible sources, grouped by namespace.RouteConvertPrometheusGetRules | GET | Gets all Grafana-managed alert rules that were imported from Prometheus-compatible sources, grouped by namespace. |
Gets Grafana-managed alert rules that were imported from Prometheus-compatible sources for a specified namespace (folder).RouteConvertPrometheusCortexGetNamespace | GET | Gets Grafana-managed alert rules that were imported from Prometheus-compatible sources for a specified namespace (folder). |
Gets Grafana-managed alert rules that were imported from Prometheus-compatible sources for a specified namespace (folder).RouteConvertPrometheusGetNamespace | GET | Gets Grafana-managed alert rules that were imported from Prometheus-compatible sources for a specified namespace (folder). |
dashboards25
Create / Update dashboardpostDashboard | POST | Creates a new dashboard or updates an existing dashboard. |
createPublicDashboardcreatePublicDashboard | POST | Create public dashboard for a dashboard |
Delete dashboard by uid.deleteDashboardByUID | DELETE | Will delete the dashboard given the specified unique identifier (uid). |
Delete Snapshot by deleteKey.deleteDashboardSnapshotByDeleteKey | GET | Snapshot public mode should be enabled or authentication is required. |
Delete Snapshot by Key.deleteDashboardSnapshot | DELETE | Delete Snapshot by Key. |
deletePublicDashboarddeletePublicDashboard | DELETE | Delete public dashboard for a dashboard |
Get a specific dashboard version using UID.getDashboardVersionByUID | GET | Get a specific dashboard version using UID. |
Get all dashboards tags of an organization.getDashboardTags | GET | Get all dashboards tags of an organization. |
Get dashboard by uid.getDashboardByUID | GET | Optional query parameter apiVersion selects the Kubernetes API version used to load the dashboard first (for example v1beta1). |
Get Snapshot by Key.getDashboardSnapshot | GET | Get Snapshot by Key. |
getHomeDashboardgetHomeDashboard | GET | NOTE: the home dashboard is configured in preferences. |
getPublicAnnotationsgetPublicAnnotations | GET | Get annotations for a public dashboard |
getPublicDashboardgetPublicDashboard | GET | Get public dashboard by dashboardUid |
Gets all existing permissions for the given dashboard.getDashboardPermissionsListByUID | GET | Use: /apis/dashboard.grafana.app/v1/namespaces/{ns}/dashboards/{uid}/access |
Gets all existing versions for the dashboard using UID.getDashboardVersionsByUID | GET | Gets all existing versions for the dashboard using UID. |
Import dashboard.importDashboard | POST | Import dashboard. |
Interpolate dashboard. This is an experimental endpoint under dashboardLibrary or suggestedDashboards feature flags and is subject to change.interpolateDashboard | POST | Interpolate dashboard. |
List snapshots.searchDashboardSnapshots | GET | List snapshots. |
listPublicDashboardslistPublicDashboards | GET | Get list of public dashboards |
queryPublicDashboardqueryPublicDashboard | POST | Get results for a given panel on a public dashboard |
Restore a dashboard to a given dashboard version using UID.restoreDashboardVersionByUID | POST | This API will be removed when /apis/dashboard.grafana.app/v1 is released. |
updatePublicDashboardupdatePublicDashboard | PATCH | Update public dashboard for a dashboard |
Updates permissions for a dashboard.updateDashboardPermissionsByUID | POST | This operation will remove existing permissions if they’re not included in the request. |
viewPublicDashboardviewPublicDashboard | GET | Get public dashboard for view |
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.createDashboardSnapshot | POST | Snapshot public mode should be enabled or authentication is required. |
datasources20
Add correlation.createCorrelation | POST | Add correlation. |
Create a data source.addDataSource | POST | By defining password and basicAuthPassword under secureJsonData property Grafana encrypts them securely as an encrypted blob in the database. |
Data source proxy DELETE calls.datasourceProxyDELETEByUIDcalls | DELETE | Proxies all calls to the actual data source. |
Data source proxy GET calls.datasourceProxyGETByUIDcalls | GET | Proxies all calls to the actual data source. |
Data source proxy POST calls.datasourceProxyPOSTByUIDcalls | POST | Proxies all calls to the actual data source. |
DataSource query metrics with expressions.queryMetricsWithExpressions | POST | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: datasources:query. |
Delete a correlation.deleteCorrelation | DELETE | Delete a correlation. |
Delete an existing data source by name. This function will be removed in the future.deleteDataSourceByName | DELETE | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: datasources:delete and scopes: datasources: ,... |
Delete an existing data source by UID.deleteDataSourceByUID | DELETE | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: datasources:delete and scopes: datasources: ,... |
Fetch data source resources.callDatasourceResourceWithUID | GET | Fetch data source resources. |
Get a single data source by Name. This function will be removed in the future.getDataSourceByName | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: datasources:read and scopes: datasources: , datasources:name:... |
Get a single data source by UID.getDataSourceByUID | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: datasources:read and scopes: datasources: , datasources:uid:... |
Get all data sources.getDataSources | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: datasources:read and scope: datasources: . |
Get data source Id by Name. This function will be removed in the future.getDataSourceIdByName | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: datasources:read and scopes: datasources: , datasources:name:... |
Gets a correlation.getCorrelation | GET | Gets a correlation. |
Gets all correlations originating from the given data source.getCorrelationsBySourceUID | GET | Gets all correlations originating from the given data source. |
Gets all correlations.getCorrelations | GET | Gets all correlations. |
Sends a health check request to the plugin datasource identified by the UID.checkDatasourceHealthWithUID | GET | Sends a health check request to the plugin datasource identified by the UID. |
Update an existing data source.updateDataSourceByUID | PUT | Similar to creating a data source, password and basicAuthPassword should be defined under secureJsonData in order to be stored securely as an encrypted blob in the database. |
Updates a correlation.updateCorrelation | PATCH | Updates a correlation. |
devices2
Lists all devices within the last 30 daysSearchDevices | GET | Lists all devices within the last 30 days |
Lists all devices within the last 30 dayslistDevices | GET | Lists all devices within the last 30 days |
enterprise7
cleanDataSourceCachecleanDataSourceCache | POST | clean cache for a single data source |
disableDataSourceCachedisableDataSourceCache | POST | disable cache for a single data source |
enableDataSourceCacheenableDataSourceCache | POST | enable cache for a single data source |
getDataSourceCacheConfiggetDataSourceCacheConfig | GET | get cache config for a single data source |
Retrieves LBAC rules for a team.getTeamLBACRulesApi | GET | Retrieves LBAC rules for a team. |
setDataSourceCacheConfigsetDataSourceCacheConfig | POST | set cache config for a single data source |
Updates LBAC rules for a team.updateTeamLBACRulesApi | PUT | Updates LBAC rules for a team. |
folders9
Create folder.createFolder | POST | If nested folders are enabled then it additionally expects the parent folder UID. |
Delete folder.deleteFolder | DELETE | Deletes an existing folder identified by UID along with all dashboards (and their alerts) stored in the folder. |
Get all folders.getFolders | GET | It returns all folders that the authenticated user has permission to view. |
Get folder by uid.getFolderByUID | GET | Use: /apis/folder.grafana.app/v1/namespaces/{ns}/folders/{folder uid} |
Gets all existing permissions for the folder with the given `uid`.getFolderPermissionList | GET | Gets all existing permissions for the folder with the given uid. |
Gets the count of each descendant of a folder by kind. The folder is identified by UID.getFolderDescendantCounts | GET | Use: /apis/folder.grafana.app/v1/namespaces/{ns}/folders/{folder uid} |
Move folder.moveFolder | POST | Use: /apis/folder.grafana.app/v1/namespaces/{ns}/folders/{folder uid}, Changing the parent folder annotation |
Update folder.updateFolder | PUT | Use: /apis/folder.grafana.app/v1/namespaces/{ns}/folders/{folder uid} |
Updates permissions for a folder. This operation will remove existing permissions if they’re not included in the request.updateFolderPermissions | POST | Updates permissions for a folder. |
health1
getHealthgetHealth | GET | apiHealthHandler will return ok if Grafana's web server is running and it can access the database. |
library_elements7
Create library element.createLibraryElement | POST | Creates a new library element. |
Delete library element.deleteLibraryElementByUID | DELETE | Deletes an existing library element as specified by the UID. |
Get all library elements.getLibraryElements | GET | Returns a list of all library elements the authenticated user has permission to view. |
Get library element by name.getLibraryElementByName | GET | Returns a library element with the given name. |
Get library element by UID.getLibraryElementByUID | GET | Returns a library element with the given UID. |
Get library element connections.getLibraryElementConnections | GET | Returns a list of connections for a library element based on the UID specified. |
Update library element.updateLibraryElement | PATCH | Updates an existing library element identified by uid. |
licensing8
Check license availability.getStatus | GET | Check license availability. |
Create license token.postLicenseToken | POST | You need to have a permission with action licensing:write. |
Get custom permissions report in CSV format.getCustomPermissionsCSV | GET | You need to have a permission with action licensing.reports:read. |
Get custom permissions report.getCustomPermissionsReport | GET | You need to have a permission with action licensing.reports:read. |
Get license token.getLicenseToken | GET | You need to have a permission with action licensing:read. |
Manually force license refresh.postRenewLicenseToken | POST | Manually ask license issuer for a new token. |
Refresh license stats.refreshLicenseStats | GET | You need to have a permission with action licensing:read. |
Remove license from database.deleteLicenseToken | DELETE | Removes the license stored in the Grafana database. |
migrations13
Cancel a snapshot, wherever it is in its processing chain.cancelSnapshot | POST | TODO: Implement |
Create a migration session.createSession | POST | Create a migration session. |
Create gcom access token.createCloudMigrationToken | POST | Create gcom access token. |
Delete a migration session by its uid.deleteSession | DELETE | Delete a migration session by its uid. |
Deletes a cloud migration token.deleteCloudMigrationToken | DELETE | Deletes a cloud migration token. |
Fetch the cloud migration token if it exists.getCloudMigrationToken | GET | Fetch the cloud migration token if it exists. |
Get a cloud migration session by its uid.getSession | GET | Get a cloud migration session by its uid. |
Get a list of all cloud migration sessions that have been created.getSessionList | GET | Get a list of all cloud migration sessions that have been created. |
Get a list of snapshots for a session.getShapshotList | GET | Get a list of snapshots for a session. |
Get metadata about a snapshot, including where it is in its processing and final results.getSnapshot | GET | Get metadata about a snapshot, including where it is in its processing and final results. |
Get the resource dependencies graph for the current set of migratable resources.getResourceDependencies | GET | Get the resource dependencies graph for the current set of migratable resources. |
Trigger the creation of an instance snapshot associated with the provided session.createSnapshot | POST | If the snapshot initialization is successful, the snapshot uid is returned. |
Upload a snapshot to the Grafana Migration Service for processing.uploadSnapshot | POST | Upload a snapshot to the Grafana Migration Service for processing. |
org14
Add a new user to the current organization.addOrgUserToCurrentOrg | POST | Adds a global user to the current organization. |
Add invite.addOrgInvite | POST | Add invite. |
Delete user in current organization.removeOrgUserForCurrentOrg | DELETE | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: org.users:remove with scope users: . |
Get all users within the current organization (lookup)getOrgUsersForCurrentOrgLookup | GET | Returns all org users within the current organization, but with less detailed information. |
Get all users within the current organization.getOrgUsersForCurrentOrg | GET | Returns all org users within the current organization. |
Get Current Org Prefs.getOrgPreferences | GET | Use /apis/preferences.grafana.app/v1/namespaces/{namespace}/preferences/namespace |
Get current Organization.getCurrentOrg | GET | Get current Organization. |
Get pending invites.getPendingOrgInvites | GET | Get pending invites. |
Patch Current Org Prefs.patchOrgPreferences | PATCH | Use /apis/preferences.grafana.app/v1/namespaces/{namespace}/preferences/namespace |
Revoke invite.revokeInvite | DELETE | Revoke invite. |
Update Current Org Prefs.updateOrgPreferences | PUT | Use /apis/preferences.grafana.app/v1/namespaces/{namespace}/preferences/namespace |
Update current Organization's address.updateCurrentOrgAddress | PUT | Update current Organization's address. |
Update current Organization.updateCurrentOrg | PUT | Update current Organization. |
Updates the given user.updateOrgUserForCurrentOrg | PATCH | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: org.users.role:update with scope users: . |
orgs12
Add a new user to the current organization.addOrgUser | POST | Adds a global user to the current organization. |
Create Organization.createOrg | POST | Only works if users.allow org create is set. |
Delete Organization.deleteOrgByID | DELETE | Delete Organization. |
Delete user in current organization.removeOrgUser | DELETE | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: org.users:remove with scope users: . |
Get Organization by ID.getOrgByID | GET | Get Organization by ID. |
Get Organization by Name.getOrgByName | GET | Get Organization by Name. |
Get Users in Organization.getOrgUsers | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: org.users:read with scope users: . |
Search all Organizations.searchOrgs | GET | Search all Organizations. |
Search Users in Organization.searchOrgUsers | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: org.users:read with scope users: . |
Update Organization's address.updateOrgAddress | PUT | Update Organization's address. |
Update Organization.updateOrg | PUT | Update Organization. |
Update Users in Organization.updateOrgUser | PATCH | If you are running Grafana Enterprise and have Fine-grained access control enabled you need to have a permission with action: org.users.role:update with scope users: . |
playlists6
Create playlist.createPlaylist | POST | Please refer to new API. |
Delete playlist.deletePlaylist | DELETE | Please refer to new API. |
Get playlist items.getPlaylistItems | GET | Please refer to new API instead (items are included in the playlist spec). |
Get playlist.getPlaylist | GET | Please refer to new API. |
Get playlists.searchPlaylists | GET | Please refer to new API. |
Update playlist.updatePlaylist | PUT | Please refer to new API. |
provisioning31
Clears the notification policy tree.RouteResetPolicyTree | DELETE | Clears the notification policy tree. |
Create a contact point.RoutePostContactpoints | POST | Create a contact point. |
Create a new alert rule.RoutePostAlertRule | POST | Create a new alert rule. |
Create a new mute timing.RoutePostMuteTiming | POST | Create a new mute timing. |
Create or update alert rule group.RoutePutAlertRuleGroup | PUT | Create or update alert rule group. |
Delete a contact point.RouteDeleteContactpoints | DELETE | Delete a contact point. |
Delete a mute timing.RouteDeleteMuteTiming | DELETE | Delete a mute timing. |
Delete a notification template group.RouteDeleteTemplate | DELETE | Delete a notification template group. |
Delete a specific alert rule by UID.RouteDeleteAlertRule | DELETE | Delete a specific alert rule by UID. |
Export a mute timing in provisioning format.RouteExportMuteTiming | GET | Export a mute timing in provisioning format. |
Export all alert rules in provisioning file format.RouteGetAlertRulesExport | GET | Export all alert rules in provisioning file format. |
Export all contact points in provisioning file format.RouteGetContactpointsExport | GET | Export all contact points in provisioning file format. |
Export all mute timings in provisioning format.RouteExportMuteTimings | GET | Export all mute timings in provisioning format. |
Export an alert rule group in provisioning file format.RouteGetAlertRuleGroupExport | GET | Export an alert rule group in provisioning file format. |
Export an alert rule in provisioning file format.RouteGetAlertRuleExport | GET | Export an alert rule in provisioning file format. |
Export the notification policy tree in provisioning file format.RouteGetPolicyTreeExport | GET | Export the notification policy tree in provisioning file format. |
Get a mute timing.RouteGetMuteTiming | GET | Get a mute timing. |
Get a notification template group.RouteGetTemplate | GET | Get a notification template group. |
Get a rule group.RouteGetAlertRuleGroup | GET | Get a rule group. |
Get a specific alert rule by UID.RouteGetAlertRule | GET | Get a specific alert rule by UID. |
Get all notification template groups.RouteGetTemplates | GET | Get all notification template groups. |
Get all the alert rules.RouteGetAlertRules | GET | Get all the alert rules. |
Get all the contact points.RouteGetContactpoints | GET | Get all the contact points. |
Get all the mute timings.RouteGetMuteTimings | GET | Get all the mute timings. |
Get the notification policy tree.RouteGetPolicyTree | GET | Get the notification policy tree. |
Replace an existing mute timing.RoutePutMuteTiming | PUT | Replace an existing mute timing. |
RouteDeleteAlertRuleGroupRouteDeleteAlertRuleGroup | DELETE | Delete rule group |
Sets the notification policy tree.RoutePutPolicyTree | PUT | Sets the notification policy tree. |
Update an existing alert rule.RoutePutAlertRule | PUT | Update an existing alert rule. |
Update an existing contact point.RoutePutContactpoint | PUT | Update an existing contact point. |
Updates an existing notification template group.RoutePutTemplate | PUT | Updates an existing notification template group. |
query_history6
Add query to query history.createQuery | POST | Adds new query to query history. |
Add star to query in query history.starQuery | POST | Adds star to query in query history as specified by the UID. |
Delete query in query history.deleteQuery | DELETE | Deletes an existing query in query history as specified by the UID. |
Query history search.searchQueries | GET | Returns a list of queries in the query history that matches the search criteria. |
Remove star to query in query history.unstarQuery | DELETE | Removes star from query in query history as specified by the UID. |
Update comment for query in query history.patchQueryComment | PATCH | Updates comment for query in query history as specified by the UID. |
quota6
Fetch Organization quota.getCurrentOrgQuota | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action orgs.quotas:read and scope org:id:1 (orgIDScope). |
Fetch Organization quota.getOrgQuota | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action orgs.quotas:read and scope org:id:1 (orgIDScope). |
Fetch user quota.getUserQuota | GET | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action users.quotas:list and scope global.users:1 (userIDScope). |
Fetch user quota.getUserQuotas | GET | Fetch user quota. |
Update user quota.updateOrgQuota | PUT | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action orgs.quotas:write and scope org:id:1 (orgIDScope). |
Update user quota.updateUserQuota | PUT | If you are running Grafana Enterprise and have Fine-grained access control enabled, you need to have a permission with action users.quotas:update and scope global.users:1 (userIDScope). |
recording_rules8
Create a recording rule that is then registered and started.createRecordingRule | POST | Create a recording rule that is then registered and started. |
Create a remote write target.createRecordingRuleWriteTarget | POST | It returns a 422 if there is not an existing prometheus data source configured. |
Delete removes the rule from the registry and stops it.deleteRecordingRule | DELETE | Delete removes the rule from the registry and stops it. |
Delete the remote write target.deleteRecordingRuleWriteTarget | DELETE | Delete the remote write target. |
Lists all rules in the database: active or deleted.listRecordingRules | GET | Lists all rules in the database: active or deleted. |
Return the prometheus remote write target.getRecordingRuleWriteTarget | GET | Return the prometheus remote write target. |
Test a recording rule.testCreateRecordingRule | POST | Test a recording rule. |
Update the active status of a rule.updateRecordingRule | PUT | Update the active status of a rule. |
reports13
Create a report.createReport | POST | Available to org admins only and with a valid license. |
Delete a report.deleteReport | DELETE | Available to org admins only and with a valid or expired license. |
Download a CSV report.renderReportCSVs | GET | Available to all users and with a valid license. |
Get a report.getReport | GET | Available to org admins only and with a valid or expired license. |
Get custom branding report image.getSettingsImage | GET | Available to org admins only and with a valid or expired license. |
Get report settings.getReportSettings | GET | Available to org admins only and with a valid or expired license. |
List reports by dashboard uid.getReportsByDashboardUID | GET | Available to org admins only and with a valid or expired license. |
List reports.getReports | GET | Available to org admins only and with a valid or expired license. |
Render report for multiple dashboards.renderReportPDFs | GET | Available to all users and with a valid license. |
Save settings.saveReportSettings | POST | Available to org admins only and with a valid or expired license. |
Send a report.sendReport | POST | Generate and send a report. |
Send test report via email.sendTestEmail | POST | Available to org admins only and with a valid license. |
Update a report.updateReport | PUT | Available to org admins only and with a valid or expired license. |
saml5
GetLogout initiates single logout process.getSAMLLogout | GET | GetLogout initiates single logout process. |
It exposes the SP (Grafana's) metadata for the IdP's consumption.getMetadata | GET | It exposes the SP (Grafana's) metadata for the IdP's consumption. |
It performs Assertion Consumer Service (ACS).postACS | POST | It performs Assertion Consumer Service (ACS). |
It performs Single Logout (SLO) callback.getSLO | GET | There might be two possible requests: 1. |
It performs Single Logout (SLO) callback.postSLO | POST | There might be two possible requests: 1. |
search2
List search sorting options.listSortOptions | GET | List search sorting options. |
searchsearch | GET | search |
service_accounts8
Create service accountcreateServiceAccount | POST | Required permissions (See note in the introduction for an explanation): action: serviceaccounts:write scope: serviceaccounts: Requires basic authentication and that the authenticated user... |
CreateNewToken adds a token to a service accountcreateToken | POST | Required permissions (See note in the introduction for an explanation): action: serviceaccounts:write scope: serviceaccounts:id:1 (single service account) |
Delete service accountdeleteServiceAccount | DELETE | Required permissions (See note in the introduction for an explanation): action: serviceaccounts:delete scope: serviceaccounts:id:1 (single service account) |
DeleteToken deletes service account tokensdeleteToken | DELETE | Required permissions (See note in the introduction for an explanation): action: serviceaccounts:write scope: serviceaccounts:id:1 (single service account) Requires basic authentication... |
Get service account tokenslistTokens | GET | Required permissions (See note in the introduction for an explanation): action: serviceaccounts:read scope: global:serviceaccounts:id:1 (single service account) Requires basic... |
Get single serviceaccount by IdretrieveServiceAccount | GET | Required permissions (See note in the introduction for an explanation): action: serviceaccounts:read scope: serviceaccounts:id:1 (single service account) |
Search service accounts with pagingsearchOrgServiceAccountsWithPaging | GET | Required permissions (See note in the introduction for an explanation): action: serviceaccounts:read scope: serviceaccounts: |
Update service accountupdateServiceAccount | PATCH | Required permissions (See note in the introduction for an explanation): action: serviceaccounts:write scope: serviceaccounts:id:1 (single service account) |
signed_in_user13
Auth tokens of the actual User.getUserAuthTokens | GET | Return a list of all auth tokens (devices) that the actual user currently have logged in from. |
Change Password.changeUserPassword | PUT | Changes the password for the user. |
Get user preferences.getUserPreferences | GET | Use /apis/preferences.grafana.app/v1/namespaces/{namespace}/preferences/user-{uid} |
getSignedInUsergetSignedInUser | GET | Get (current authenticated user) |
Organizations of the actual User.getSignedInUserOrgList | GET | Return a list of all organizations of the current user. |
Patch user preferences.patchUserPreferences | PATCH | Use /apis/preferences.grafana.app/v1/namespaces/{namespace}/preferences/user-{uid} |
Revoke an auth token of the actual User.revokeUserAuthToken | POST | Revokes the given auth token (device) for the actual user. |
Star a dashboard.starDashboardByUID | POST | Stars the given Dashboard for the actual user. |
Switch user context for signed in user.userSetUsingOrg | POST | Switch user context to the given organization. |
Teams that the actual User is member of.getSignedInUserTeamList | GET | Return a list of all teams that the current user is member of. |
Unstar a dashboard.unstarDashboardByUID | DELETE | Deletes the starring of the given Dashboard for the actual user. |
Update signed in User.updateSignedInUser | PUT | Update signed in User. |
Update user preferences.updateUserPreferences | PUT | Use /apis/preferences.grafana.app/v1/namespaces/{namespace}/preferences/user-{uid} |
signing_keys1
Get JSON Web Key Set (JWKS) with all the keys that can be used to verify tokens (public keys)retrieveJWKS | GET | Required permissions None |
snapshots1
Get snapshot sharing settings.getSharingOptions | GET | Get snapshot sharing settings. |
sso_settings5
Get an SSO Settings entry by KeygetProviderSettings | GET | You need to have a permission with action settings:read with scope settings:auth. |
List all SSO Settings entrieslistAllProvidersSettings | GET | You need to have a permission with action settings:read with scope settings:auth. |
Patch SSO SettingspatchProviderSettings | PATCH | Partially updates the SSO Settings for a provider. |
Remove SSO SettingsremoveProviderSettings | DELETE | Removes the SSO Settings for a provider. |
Update SSO SettingsupdateProviderSettings | PUT | Inserts or updates the SSO Settings for a provider. |
sync_team_groups4
Add External Group.addTeamGroupApi | POST | Add External Group. |
Get External Groups.getTeamGroupsApi | GET | Get External Groups. |
Remove External Group.removeTeamGroupApiQuery | DELETE | Remove External Group. |
Search for team groups with optional filtering and pagination.searchTeamGroups | GET | Search for team groups with optional filtering and pagination. |
teams12
Add Team Member.addTeamMember | POST | Add Team Member. |
Add Team.createTeam | POST | Add Team. |
Delete Team By ID.deleteTeamByID | DELETE | Delete Team By ID. |
Get Team By ID.getTeamByID | GET | Get Team By ID. |
Get Team Members.getTeamMembers | GET | Get Team Members. |
Get Team Preferences.getTeamPreferences | GET | Get Team Preferences. |
Remove Member From Team.removeTeamMember | DELETE | Remove Member From Team. |
Set team memberships.setTeamMemberships | PUT | Takes user emails, and updates team members and admins to the provided lists of users. |
Team Search With Paging.searchTeams | GET | Team Search With Paging. |
Update Team Member.updateTeamMember | PUT | Update Team Member. |
Update Team Preferences.updateTeamPreferences | PUT | Update Team Preferences. |
Update Team.updateTeam | PUT | Update Team. |
user1
Update user email.updateUserEmail | GET | Update the email of user given a verification code. |
users7
Get organizations for user.getUserOrgList | GET | Get organizations for user identified by id. |
Get teams for user.getUserTeams | GET | Get teams for user identified by id. |
Get user by id.getUserByID | GET | Get user by id. |
Get user by login or email.getUserByLoginOrEmail | GET | Get user by login or email. |
Get users with paging.searchUsersWithPaging | GET | Get users with paging. |
Get users.searchUsers | GET | Returns all users that the authenticated user has permission to view, admin permission required. |
Update user.updateUser | PUT | Update the user identified by id. |