2022-05-26 23:06:25 +08:00
---
aliases:
2022-12-10 00:36:04 +08:00
- ../../http_api/admin/
2023-02-07 01:14:36 +08:00
canonical: /docs/grafana/latest/developers/http_api/admin/
2022-05-26 23:06:25 +08:00
description: Grafana Admin HTTP API
keywords:
- grafana
- http
- documentation
- api
- admin
Explicitly set all front matter labels in the source files (#71548)
* Set every page to have defaults of 'Enterprise' and 'Open source' labels
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Set administration pages to have of 'Cloud', 'Enterprise', and 'Open source' labels
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Set administration/enterprise-licensing pages to have 'Enterprise' labels
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Set administration/organization-management pages to have 'Enterprise' and 'Open source' labels
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Set administration/provisioning pages to have 'Enterprise' and 'Open source' labels
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Set administration/recorded-queries pages to have labels cloud,enterprise
* Set administration/roles-and-permissions/access-control pages to have labels cloud,enterprise
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Set administration/stats-and-license pages to have labels cloud,enterprise
* Set alerting pages to have labels cloud,enterprise,oss
* Set breaking-changes pages to have labels cloud,enterprise,oss
* Set dashboards pages to have labels cloud,enterprise,oss
* Set datasources pages to have labels cloud,enterprise,oss
* Set explore pages to have labels cloud,enterprise,oss
* Set fundamentals pages to have labels cloud,enterprise,oss
* Set introduction/grafana-cloud pages to have labels cloud
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Fix introduction pages products
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Set panels-visualizations pages to have labels cloud,enterprise,oss
* Set release-notes pages to have labels cloud,enterprise,oss
* Set search pages to have labels cloud,enterprise,oss
* Set setup-grafana/configure-security/audit-grafana pages to have labels cloud,enterprise
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Set setup-grafana/configure-security/configure-authentication pages to have labels cloud,enterprise,oss
* Set setup-grafana/configure-security/configure-authentication/enhanced-ldap pages to have labels cloud,enterprise
* Set setup-grafana/configure-security/configure-authentication/saml pages to have labels cloud,enterprise
* Set setup-grafana/configure-security/configure-database-encryption/encrypt-secrets-using-hashicorp-key-vault pages to have labels cloud,enterprise
* Set setup-grafana/configure-security/configure-request-security pages to have labels cloud,enterprise,oss
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Set setup-grafana/configure-security/configure-team-sync pages to have labels cloud,enterprise
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Set setup-grafana/configure-security/export-logs pages to have labels cloud,enterprise
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Set troubleshooting pages to have labels cloud,enterprise,oss
* Set whatsnew pages to have labels cloud,enterprise,oss
* Apply updated labels from review
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>
---------
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>
2023-07-18 16:10:12 +08:00
labels:
products:
- enterprise
- oss
2022-05-26 23:06:25 +08:00
title: 'Admin HTTP API '
---
2016-02-03 14:59:22 +08:00
2016-02-05 17:47:34 +08:00
# Admin API
2016-02-03 14:59:22 +08:00
2024-08-29 17:50:11 +08:00
{{< admonition type = "caution" > }}
You can't authenticate to the Admin HTTP API with service account tokens.
Service accounts are limited to an organization and an organization role.
They can't be granted [Grafana server administrator permissions ](/docs/grafana/<GRAFANA_VERSION>/administration/roles-and-permissions/#grafana-server-administrators ).
To use these API endpoints you have to use Basic authentication and the Grafana user must have the Grafana server administrator permission.
The `admin` user that Grafana is provisioned with by default has permissions to use these API endpoints.
{{< / admonition > }}
2016-09-22 15:09:12 +08:00
2025-03-06 20:59:08 +08:00
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](../../../administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
2021-05-21 00:53:34 +08:00
2021-05-28 19:28:40 +08:00
## Fetch settings
2016-02-03 14:59:22 +08:00
`GET /api/admin/settings`
2025-03-06 20:59:08 +08:00
Only works with Basic Authentication (username and password). See [introduction ](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api ) for an explanation.
2017-09-05 16:03:31 +08:00
2022-05-21 03:48:52 +08:00
**Required permissions**
2021-07-29 16:38:46 +08:00
2025-03-06 20:59:08 +08:00
See note in the [introduction ](#admin-api ) for an explanation.
2021-07-29 16:38:46 +08:00
2021-08-06 21:52:36 +08:00
| Action | Scope |
| ------------- | ----------------------------------------------------------------------------------- |
| settings:read | settings:\*_< br > settings:auth.saml:_< br > settings:auth.saml:enabled (property level) |
2021-07-29 16:38:46 +08:00
2016-02-03 14:59:22 +08:00
**Example Request**:
2020-01-27 20:41:15 +08:00
```http
2017-10-06 01:01:03 +08:00
GET /api/admin/settings
Accept: application/json
Content-Type: application/json
```
2016-02-03 14:59:22 +08:00
**Example Response**:
2020-01-27 20:41:15 +08:00
```http
2017-10-06 01:01:03 +08:00
HTTP/1.1 200
Content-Type: application/json
{
2018-07-04 18:23:10 +08:00
"DEFAULT": {
2018-07-04 18:30:23 +08:00
"app_mode":"production"
2018-07-04 18:23:10 +08:00
},
"analytics": {
2017-10-06 01:01:03 +08:00
"google_analytics_ua_id":"",
"reporting_enabled":"false"
},
"auth.anonymous":{
"enabled":"true",
"org_name":"Main Org.",
"org_role":"Viewer"
},
"auth.basic":{
"enabled":"false"
},
"auth.github":{
"allow_sign_up":"false",
"allowed_domains":"",
"allowed_organizations":"",
"api_url":"https://api.github.com/user",
"auth_url":"https://github.com/login/oauth/authorize",
"client_id":"some_id",
"client_secret":"************",
"enabled":"false",
2018-02-28 20:08:15 +08:00
"scopes":"user:email,read:org",
2017-10-06 01:01:03 +08:00
"team_ids":"",
"token_url":"https://github.com/login/oauth/access_token"
},
"auth.google":{
"allow_sign_up":"false","allowed_domains":"",
"api_url":"https://www.googleapis.com/oauth2/v1/userinfo",
"auth_url":"https://accounts.google.com/o/oauth2/auth",
"client_id":"some_client_id",
"client_secret":"************",
"enabled":"false",
"scopes":"https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email",
"token_url":"https://accounts.google.com/o/oauth2/token"
},
"auth.ldap":{
"config_file":"/etc/grafana/ldap.toml",
"enabled":"false"
},
"auth.proxy":{
"auto_sign_up":"true",
"enabled":"false",
"header_name":"X-WEBAUTH-USER",
"header_property":"username"
},
"dashboards.json":{
"enabled":"false",
"path":"/var/lib/grafana/dashboards"
},
"database":{
"host":"127.0.0.1:0000",
"name":"grafana",
"password":"************",
"path":"grafana.db",
"ssl_mode":"disable",
"type":"sqlite3",
"user":"root"
},
"emails":{
2021-07-19 18:31:51 +08:00
"templates_pattern":"emails/*.html, emails/*.txt",
"welcome_email_on_sign_up":"false",
"content_types":"text/html"
2017-10-06 01:01:03 +08:00
},
"log":{
"buffer_len":"10000",
"level":"Info",
"mode":"file"
},
"log.console":{
"level":""
},
"log.file":{
"daily_rotate":"true",
"file_name":"",
"level":"",
"log_rotate":"true",
"max_days":"7",
"max_lines":"1000000",
"max_lines_shift":"28",
"max_size_shift":""
},
"paths":{
"data":"/tsdb/grafana",
"logs":"/logs/apps/grafana"},
"security":{
"admin_password":"************",
"admin_user":"admin",
"cookie_remember_name":"grafana_remember",
"cookie_username":"grafana_user",
"disable_gravatar":"false",
"login_remember_days":"7",
"secret_key":"************"
},
"server":{
"cert_file":"",
"cert_key":"",
2024-03-22 23:13:22 +08:00
"certs_watch_interval": "0s",
2017-10-06 01:01:03 +08:00
"domain":"mygraf.com",
"enable_gzip":"false",
"enforce_domain":"false",
"http_addr":"127.0.0.1",
"http_port":"0000",
"protocol":"http",
"root_url":"%(protocol)s://%(domain)s:%(http_port)s/",
"router_logging":"true",
"data_proxy_logging":"true",
"static_root_path":"public"
},
"session":{
"cookie_name":"grafana_sess",
"cookie_secure":"false",
"gc_interval_time":"",
"provider":"file",
"provider_config":"sessions",
"session_life_time":"86400"
},
"smtp":{
"cert_file":"",
"enabled":"false",
"from_address":"admin@grafana.localhost",
"from_name":"Grafana",
"ehlo_identity":"dashboard.example.com",
"host":"localhost:25",
"key_file":"",
"password":"************",
"skip_verify":"false",
"user":""
},
"users":{
"allow_org_create":"true",
"allow_sign_up":"false",
"auto_assign_org":"true",
"auto_assign_org_role":"Viewer"
}
}
```
2021-05-28 19:28:40 +08:00
## Update settings
`PUT /api/admin/settings`
2025-06-20 00:31:13 +08:00
{{< admonition type = "note" > }}
2023-05-23 04:45:28 +08:00
Available in Grafana Enterprise v8.0+.
2025-06-20 00:31:13 +08:00
{{< / admonition > }}
2021-05-28 19:28:40 +08:00
Updates / removes and reloads database settings. You must provide either `updates` , `removals` or both.
This endpoint only supports changes to `auth.saml` configuration.
2022-05-21 03:48:52 +08:00
**Required permissions**
2021-07-30 19:04:13 +08:00
2025-03-06 20:59:08 +08:00
See note in the [introduction ](#admin-api ) for an explanation.
2021-07-30 19:04:13 +08:00
2021-08-06 21:52:36 +08:00
| Action | Scope |
| -------------- | ----------------------------------------------------------------------------------- |
| settings:write | settings:\*_< br > settings:auth.saml:_< br > settings:auth.saml:enabled (property level) |
2021-07-30 19:04:13 +08:00
2021-05-28 19:28:40 +08:00
**Example request:**
```http
PUT /api/admin/settings
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
{
"updates": {
"auth.saml": {
"enabled": "true"
}
},
"removals": {
"auth.saml": ["single_logout"]
},
}
```
**Example response:**
```http
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 32
{
"message":"Settings updated"
}
```
Status codes:
- **200** - OK
- **400** - Bad Request
- **401** - Unauthorized
- **403** - Forbidden
- **500** - Internal Server Error
2016-02-05 17:47:34 +08:00
## Grafana Stats
2016-02-03 14:59:22 +08:00
`GET /api/admin/stats`
2025-03-06 20:59:08 +08:00
Only works with Basic Authentication (username and password). See [introduction ](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api ) for an explanation.
2017-09-05 16:03:31 +08:00
2022-05-21 03:48:52 +08:00
**Required permissions**
2021-07-29 16:38:46 +08:00
2025-03-06 20:59:08 +08:00
See note in the [introduction ](#admin-api ) for an explanation.
2021-07-29 16:38:46 +08:00
2021-08-06 21:52:36 +08:00
| Action | Scope |
| ----------------- | ----- |
| server.stats:read | n/a |
2021-07-29 16:38:46 +08:00
2016-02-03 14:59:22 +08:00
**Example Request**:
2020-01-27 20:41:15 +08:00
```http
2017-10-06 01:01:03 +08:00
GET /api/admin/stats
Accept: application/json
Content-Type: application/json
```
2016-02-03 14:59:22 +08:00
**Example Response**:
2020-01-27 20:41:15 +08:00
```http
2017-10-06 01:01:03 +08:00
HTTP/1.1 200
Content-Type: application/json
{
2018-07-04 18:26:30 +08:00
"users":2,
"orgs":1,
"dashboards":4,
"snapshots":2,
"tags":6,
"datasources":1,
"playlists":1,
"stars":2,
"alerts":2,
"activeUsers":1
2017-10-06 01:01:03 +08:00
}
```
2016-02-03 14:59:22 +08:00
2022-01-24 21:24:58 +08:00
## Grafana Usage Report preview
`GET /api/admin/usage-report-preview`
Preview usage report to be sent to vendor.
2025-03-06 20:59:08 +08:00
Only works with Basic Authentication (username and password). See [introduction ](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api ) for an explanation.
2022-01-24 21:24:58 +08:00
**Example Request**:
```http
GET /api/admin/usage-report-preview
Accept: application/json
Content-Type: application/json
```
**Example Response**:
```http
HTTP/1.1 200
Content-Type: application/json
{
"version": "8_4_0",
"metrics": {
"stats.active_admins.count": 1,
"stats.active_editors.count": 1,
"stats.active_sessions.count": 0,
"stats.active_users.count": 2,
"stats.active_viewers.count": 0,
"stats.admins.count": 1,
"stats.alert_rules.count": 0,
"stats.alerting.ds.other.count": 0,
"stats.alerts.count": 5,
"stats.annotations.count": 6,
"stats.api_keys.count": 1
}
}
```
2016-02-05 17:47:34 +08:00
## Global Users
2016-02-03 14:59:22 +08:00
`POST /api/admin/users`
2025-03-06 20:59:08 +08:00
Create new user. Only works with Basic Authentication (username and password). See [introduction ](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api ) for an explanation.
2016-02-03 14:59:22 +08:00
2022-05-21 03:48:52 +08:00
**Required permissions**
2021-05-21 00:53:34 +08:00
2025-03-06 20:59:08 +08:00
See note in the [introduction ](#admin-api ) for an explanation.
2021-05-21 00:53:34 +08:00
2021-08-06 21:52:36 +08:00
| Action | Scope |
| ------------ | ----- |
| users:create | n/a |
2021-05-21 00:53:34 +08:00
2016-02-03 14:59:22 +08:00
**Example Request**:
2020-01-27 20:41:15 +08:00
```http
2017-10-06 01:01:03 +08:00
POST /api/admin/users HTTP/1.1
Accept: application/json
Content-Type: application/json
2016-02-03 14:59:22 +08:00
2017-10-06 01:01:03 +08:00
{
"name":"User",
"email":"user@graf.com",
"login":"user",
2020-04-15 17:11:45 +08:00
"password":"userpassword",
"OrgId": 1
2017-10-06 01:01:03 +08:00
}
```
2016-02-03 14:59:22 +08:00
2025-03-06 20:59:08 +08:00
Note that `OrgId` is an optional parameter that can be used to assign a new user to a different organization when [auto_assign_org ](../../../setup-grafana/configure-grafana/#auto-assign-org ) is set to `true` .
2020-04-15 17:11:45 +08:00
2016-02-03 14:59:22 +08:00
**Example Response**:
2020-01-27 20:41:15 +08:00
```http
2017-10-06 01:01:03 +08:00
HTTP/1.1 200
Content-Type: application/json
2016-02-03 14:59:22 +08:00
2017-10-06 01:01:03 +08:00
{"id":5,"message":"User created"}
```
2016-02-03 14:59:22 +08:00
2016-02-05 17:47:34 +08:00
## Password for User
2016-02-03 14:59:22 +08:00
`PUT /api/admin/users/:id/password`
2025-03-06 20:59:08 +08:00
Only works with Basic Authentication (username and password). See [introduction ](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api ) for an explanation.
2017-09-05 16:03:31 +08:00
Change password for a specific user.
2016-02-03 14:59:22 +08:00
2022-05-21 03:48:52 +08:00
**Required permissions**
2021-05-21 00:53:34 +08:00
2025-03-06 20:59:08 +08:00
See note in the [introduction ](#admin-api ) for an explanation.
2021-05-21 00:53:34 +08:00
2022-06-02 20:14:48 +08:00
| Action | Scope |
| -------------------- | --------------- |
| users.password:write | global.users:\* |
2021-05-21 00:53:34 +08:00
2016-02-03 14:59:22 +08:00
**Example Request**:
2020-01-27 20:41:15 +08:00
```http
2017-10-06 01:01:03 +08:00
PUT /api/admin/users/2/password HTTP/1.1
Accept: application/json
Content-Type: application/json
2016-02-03 14:59:22 +08:00
2017-10-06 01:01:03 +08:00
{"password":"userpassword"}
```
2017-05-17 20:26:27 +08:00
2016-02-03 14:59:22 +08:00
**Example Response**:
2020-01-27 20:41:15 +08:00
```http
2017-10-06 01:01:03 +08:00
HTTP/1.1 200
Content-Type: application/json
2016-02-03 14:59:22 +08:00
2017-10-06 01:01:03 +08:00
{"message": "User password updated"}
```
2016-02-03 14:59:22 +08:00
2016-02-05 17:47:34 +08:00
## Permissions
2016-02-03 14:59:22 +08:00
`PUT /api/admin/users/:id/permissions`
2025-03-06 20:59:08 +08:00
Only works with Basic Authentication (username and password). See [introduction ](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api ) for an explanation.
2017-09-05 16:03:31 +08:00
2022-05-21 03:48:52 +08:00
**Required permissions**
2021-05-21 00:53:34 +08:00
2025-03-06 20:59:08 +08:00
See note in the [introduction ](#admin-api ) for an explanation.
2021-05-21 00:53:34 +08:00
2022-06-02 20:14:48 +08:00
| Action | Scope |
| ----------------------- | --------------- |
| users.permissions:write | global.users:\* |
2021-05-21 00:53:34 +08:00
2016-02-03 14:59:22 +08:00
**Example Request**:
2020-01-27 20:41:15 +08:00
```http
2017-10-06 01:01:03 +08:00
PUT /api/admin/users/2/permissions HTTP/1.1
Accept: application/json
Content-Type: application/json
2016-02-03 14:59:22 +08:00
2017-10-06 01:01:03 +08:00
{"isGrafanaAdmin": true}
```
2017-05-17 20:26:27 +08:00
2016-02-03 14:59:22 +08:00
**Example Response**:
2020-01-27 20:41:15 +08:00
```http
2017-10-06 01:01:03 +08:00
HTTP/1.1 200
Content-Type: application/json
2016-02-03 14:59:22 +08:00
2019-01-07 06:57:44 +08:00
{"message": "User permissions updated"}
2017-10-06 01:01:03 +08:00
```
2016-02-03 14:59:22 +08:00
2016-02-05 17:47:34 +08:00
## Delete global User
2016-02-03 14:59:22 +08:00
`DELETE /api/admin/users/:id`
2025-03-06 20:59:08 +08:00
Only works with Basic Authentication (username and password). See [introduction ](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api ) for an explanation.
2017-09-05 16:03:31 +08:00
2022-05-21 03:48:52 +08:00
**Required permissions**
2021-05-21 00:53:34 +08:00
2025-03-06 20:59:08 +08:00
See note in the [introduction ](#admin-api ) for an explanation.
2021-05-21 00:53:34 +08:00
2021-08-06 21:52:36 +08:00
| Action | Scope |
| ------------ | --------------- |
2022-03-22 19:48:46 +08:00
| users:delete | global.users:\* |
2021-05-21 00:53:34 +08:00
2016-02-03 14:59:22 +08:00
**Example Request**:
2020-01-27 20:41:15 +08:00
```http
2017-10-06 01:01:03 +08:00
DELETE /api/admin/users/2 HTTP/1.1
Accept: application/json
Content-Type: application/json
```
2016-02-03 14:59:22 +08:00
**Example Response**:
2020-01-27 20:41:15 +08:00
```http
2017-10-06 01:01:03 +08:00
HTTP/1.1 200
Content-Type: application/json
2016-02-03 14:59:22 +08:00
2019-01-07 06:57:44 +08:00
{"message": "User deleted"}
2017-10-06 01:01:03 +08:00
```
2016-12-19 23:45:46 +08:00
2019-03-08 22:15:57 +08:00
## Auth tokens for User
`GET /api/admin/users/:id/auth-tokens`
Return a list of all auth tokens (devices) that the user currently have logged in from.
2025-03-06 20:59:08 +08:00
Only works with Basic Authentication (username and password). See [introduction ](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api ) for an explanation.
2019-03-08 22:15:57 +08:00
2022-05-21 03:48:52 +08:00
**Required permissions**
2021-05-21 00:53:34 +08:00
2025-03-06 20:59:08 +08:00
See note in the [introduction ](#admin-api ) for an explanation.
2021-05-21 00:53:34 +08:00
2021-08-06 21:52:36 +08:00
| Action | Scope |
| -------------------- | --------------- |
2022-06-02 20:14:48 +08:00
| users.authtoken:read | global.users:\* |
2021-05-21 00:53:34 +08:00
2019-03-08 22:15:57 +08:00
**Example Request**:
```http
GET /api/admin/users/1/auth-tokens HTTP/1.1
Accept: application/json
Content-Type: application/json
```
**Example Response**:
```http
HTTP/1.1 200
Content-Type: application/json
[
{
"id": 361,
"isActive": false,
"clientIp": "127.0.0.1",
2019-06-11 20:12:52 +08:00
"browser": "Chrome",
"browserVersion": "72.0",
"os": "Linux",
"osVersion": "",
"device": "Other",
2019-03-08 22:15:57 +08:00
"createdAt": "2019-03-05T21:22:54+01:00",
"seenAt": "2019-03-06T19:41:06+01:00"
},
{
"id": 364,
"isActive": false,
"clientIp": "127.0.0.1",
2019-06-11 20:12:52 +08:00
"browser": "Mobile Safari",
"browserVersion": "11.0",
"os": "iOS",
"osVersion": "11.0",
"device": "iPhone",
2019-03-08 22:15:57 +08:00
"createdAt": "2019-03-06T19:41:19+01:00",
"seenAt": "2019-03-06T19:41:21+01:00"
}
]
```
## Revoke auth token for User
`POST /api/admin/users/:id/revoke-auth-token`
Revokes the given auth token (device) for the user. User of issued auth token (device) will no longer be logged in
and will be required to authenticate again upon next activity.
2025-03-06 20:59:08 +08:00
Only works with Basic Authentication (username and password). See [introduction ](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api ) for an explanation.
2019-03-08 22:15:57 +08:00
2022-05-21 03:48:52 +08:00
**Required permissions**
2021-05-21 00:53:34 +08:00
2025-03-06 20:59:08 +08:00
See note in the [introduction ](#admin-api ) for an explanation.
2021-05-21 00:53:34 +08:00
2022-06-02 20:14:48 +08:00
| Action | Scope |
| --------------------- | --------------- |
| users.authtoken:write | global.users:\* |
2021-05-21 00:53:34 +08:00
2019-03-08 22:15:57 +08:00
**Example Request**:
```http
POST /api/admin/users/1/revoke-auth-token HTTP/1.1
Accept: application/json
Content-Type: application/json
{
"authTokenId": 364
}
```
**Example Response**:
```http
HTTP/1.1 200
Content-Type: application/json
{
"message": "User auth token revoked"
}
```
## Logout User
`POST /api/admin/users/:id/logout`
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.
2025-03-06 20:59:08 +08:00
Only works with Basic Authentication (username and password). See [introduction ](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api ) for an explanation.
2019-03-08 22:15:57 +08:00
2022-05-21 03:48:52 +08:00
**Required permissions**
2021-05-21 00:53:34 +08:00
2025-03-06 20:59:08 +08:00
See note in the [introduction ](#admin-api ) for an explanation.
2021-05-21 00:53:34 +08:00
2021-08-06 21:52:36 +08:00
| Action | Scope |
| ------------ | --------------- |
2022-03-22 19:48:46 +08:00
| users.logout | global.users:\* |
2021-05-21 00:53:34 +08:00
2019-03-08 22:15:57 +08:00
**Example Request**:
```http
POST /api/admin/users/1/logout HTTP/1.1
Accept: application/json
Content-Type: application/json
```
**Example Response**:
```http
HTTP/1.1 200
Content-Type: application/json
{
"message": "User auth token revoked"
}
```
2019-04-25 15:06:44 +08:00
## Reload provisioning configurations
`POST /api/admin/provisioning/dashboards/reload`
`POST /api/admin/provisioning/datasources/reload`
2020-06-22 23:49:13 +08:00
`POST /api/admin/provisioning/plugins/reload`
2021-10-01 20:54:09 +08:00
`POST /api/admin/provisioning/access-control/reload`
2021-05-21 00:53:34 +08:00
2022-08-18 00:53:36 +08:00
`POST /api/admin/provisioning/alerting/reload`
2019-04-25 15:06:44 +08:00
Reloads the provisioning config files for specified type and provision entities again. It won't return
until the new provisioned entities are already stored in the database. In case of dashboards, it will stop
2020-11-03 19:09:49 +08:00
polling for changes in dashboard files and then restart it with new configurations after returning.
2019-04-25 15:06:44 +08:00
2025-03-06 20:59:08 +08:00
Only works with Basic Authentication (username and password). See [introduction ](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api ) for an explanation.
2019-04-25 15:06:44 +08:00
2022-05-21 03:48:52 +08:00
**Required permissions**
2021-05-21 00:53:34 +08:00
2025-03-06 20:59:08 +08:00
See note in the [introduction ](#admin-api ) for an explanation.
2021-05-21 00:53:34 +08:00
2021-09-15 23:58:20 +08:00
| Action | Scope | Provision entity |
| ------------------- | -------------------------- | ---------------- |
| provisioning:reload | provisioners:accesscontrol | accesscontrol |
| provisioning:reload | provisioners:dashboards | dashboards |
| provisioning:reload | provisioners:datasources | datasources |
| provisioning:reload | provisioners:plugins | plugins |
2022-08-18 00:53:36 +08:00
| provisioning:reload | provisioners:alerting | alerting |
2021-05-21 00:53:34 +08:00
2019-04-25 15:06:44 +08:00
**Example Request**:
```http
POST /api/admin/provisioning/dashboards/reload HTTP/1.1
Accept: application/json
Content-Type: application/json
```
**Example Response**:
```http
HTTP/1.1 200
Content-Type: application/json
{
"message": "Dashboards config reloaded"
}
```
2019-08-28 19:26:03 +08:00
## Reload LDAP configuration
`POST /api/admin/ldap/reload`
Reloads the LDAP configuration.
2025-03-06 20:59:08 +08:00
Only works with Basic Authentication (username and password). See [introduction ](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api ) for an explanation.
2019-08-28 19:26:03 +08:00
**Example Request**:
```http
POST /api/admin/ldap/reload HTTP/1.1
Accept: application/json
Content-Type: application/json
```
**Example Response**:
```http
HTTP/1.1 200
Content-Type: application/json
{
"message": "LDAP config reloaded"
}
```
2022-05-23 19:13:55 +08:00
## Rotate data encryption keys
`POST /api/admin/encryption/rotate-data-keys`
2025-03-06 20:59:08 +08:00
[Rotates ](../../../setup-grafana/configure-security/configure-database-encryption/#rotate-data-keys ) data encryption keys.
2022-05-23 19:13:55 +08:00
**Example Request**:
```http
POST /api/admin/encryption/rotate-data-keys HTTP/1.1
Accept: application/json
Content-Type: application/json
```
**Example Response**:
```http
HTTP/1.1 204
Content-Type: application/json
```
2022-07-18 14:57:58 +08:00
## Re-encrypt data encryption keys
`POST /api/admin/encryption/reencrypt-data-keys`
2025-03-06 20:59:08 +08:00
[Re-encrypts ](../../../setup-grafana/configure-security/configure-database-encryption/#re-encrypt-data-keys ) data encryption keys.
2022-07-18 14:57:58 +08:00
**Example Request**:
```http
POST /api/admin/encryption/reencrypt-data-keys HTTP/1.1
Accept: application/json
Content-Type: application/json
```
**Example Response**:
```http
HTTP/1.1 204
Content-Type: application/json
```
## Re-encrypt secrets
`POST /api/admin/encryption/reencrypt-secrets`
2025-03-06 20:59:08 +08:00
[Re-encrypts ](../../../setup-grafana/configure-security/configure-database-encryption/#re-encrypt-secrets ) secrets.
2022-07-18 14:57:58 +08:00
**Example Request**:
```http
POST /api/admin/encryption/reencrypt-secrets HTTP/1.1
Accept: application/json
Content-Type: application/json
```
**Example Response**:
```http
HTTP/1.1 204
Content-Type: application/json
```
## Roll back secrets
`POST /api/admin/encryption/rollback-secrets`
2025-03-06 20:59:08 +08:00
[Rolls back ](../../../setup-grafana/configure-security/configure-database-encryption/#roll-back-secrets ) secrets.
2022-07-18 14:57:58 +08:00
**Example Request**:
```http
POST /api/admin/encryption/rollback-secrets HTTP/1.1
Accept: application/json
Content-Type: application/json
```
**Example Response**:
```http
HTTP/1.1 204
Content-Type: application/json
```