API настроек пользователя и организации

Note

Starting in Grafana 13, /api endpoints are being deprecated in favor of the /apis route. Note that while Grafana is working on migrating existing APIs, currently there may not be an exact match to the legacy API you’re using.

This change doesn’t disrupt or break your current setup. Legacy APIs are not being disabled and remain fully accessible and operative, but /api routes will no longer be updated.

To learn more refer to the new API structure in Grafana.

Ключи:

  • theme — одно из: light, dark или пустая строка для темы по умолчанию
  • homeDashboardId — устарел. Используйте вместо него homeDashboardUID.
  • homeDashboardUID: :uid дашборда
  • timezone — любая допустимая строка часового пояса IANA (например, America/New_York, Europe/London), utc, browser или пустая строка для значения по умолчанию.

Пропуск ключа приведёт к замене текущего значения на системное значение по умолчанию.

Получение настроек текущего пользователя

GET /api/user/preferences

Пример запроса:

http
GET /api/user/preferences HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>

Пример ответа:

http
HTTP/1.1 200
Content-Type: application/json

{
    "theme": "",
    "homeDashboardId": 217,
    "homeDashboardUID": "jcIIG-07z",
    "timezone": "utc",
    "weekStart": "",
    "navbar": {
        "bookmarkUrls": null
    },
    "queryHistory": {
        "homeTab": ""
    }
}

Обновление настроек текущего пользователя

PUT /api/user/preferences

Пример запроса:

http
PUT /api/user/preferences HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>

{
  "theme": "",
  "homeDashboardUID":"home",
  "timezone":"utc"
}

Пример ответа:

http
HTTP/1.1 200
Content-Type: text/plain; charset=utf-8

{"message":"Preferences updated"}

Частичное обновление настроек текущего пользователя

Обновите одну или несколько настроек, не изменяя остальные.

PATCH /api/user/preferences

Пример запроса:

http
PATCH /api/user/preferences HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>

{
  "theme": "dark"
}

Пример ответа:

http
HTTP/1.1 200
Content-Type: text/plain; charset=utf-8

{"message":"Preferences updated"}

Получение настроек текущей организации

GET /api/org/preferences

Пример запроса:

http
GET /api/org/preferences HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>

Пример ответа:

http
HTTP/1.1 200
Content-Type: application/json

{
    "theme": "",
    "homeDashboardId": 0,
    "homeDashboardUID": "",
    "timezone": "",
    "weekStart": "",
    "navbar": {
        "bookmarkUrls": null
    },
    "queryHistory": {
        "homeTab": ""
    }
}

Обновление настроек текущей организации

PUT /api/org/preferences

Пример запроса:

http
PUT /api/org/preferences HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>

{
  "theme": "",
  "homeDashboardUID":"home",
  "timezone":"utc"
}

Пример ответа:

http
HTTP/1.1 200
Content-Type: text/plain; charset=utf-8

{"message":"Preferences updated"}

Частичное обновление настроек текущей организации

Обновите одну или несколько настроек, не изменяя остальные.

PATCH /api/org/preferences

Пример запроса:

http
PATCH /api/org/preferences HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>

{
  "theme": "dark"
}

Пример ответа:

http
HTTP/1.1 200
Content-Type: text/plain; charset=utf-8

{"message":"Preferences updated"}