grafana/docs/sources/http_api/user.md

255 lines
4.8 KiB
Markdown
Raw Normal View History

2016-02-03 00:59:22 -06:00
----
2016-02-05 03:47:34 -06:00
page_title: User API
page_description: Grafana User API Reference
page_keywords: grafana, admin, http, api, documentation, user
2016-02-03 00:59:22 -06:00
---
2016-02-05 03:47:34 -06:00
# User API
2016-02-03 00:59:22 -06:00
2016-02-05 03:47:34 -06:00
## Search Users
2016-02-03 00:59:22 -06:00
`GET /api/users`
**Example Request**:
GET /api/users HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
[
{
"id": 1,
"name": "Admin",
"login": "admin",
"email": "admin@mygraf.com",
"isAdmin": true
},
{
"id": 2,
"name": "User",
"login": "user",
"email": "user@mygraf.com",
"isAdmin": false
}
]
2016-02-05 03:47:34 -06:00
## Get single user by Id
2016-02-03 00:59:22 -06:00
`GET /api/users/:id`
**Example Request**:
GET /api/users/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{
"email": "user@mygraf.com"
"name": "admin",
"login": "admin",
"theme": "light",
"orgId": 1,
"isGrafanaAdmin": true
}
2016-02-05 03:47:34 -06:00
## User Update
2016-02-03 00:59:22 -06:00
`PUT /api/users/:id`
**Example Request**:
PUT /api/users/2 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
{
"email":"user@mygraf.com",
"name":"User2",
"login":"user",
"theme":"light"
}
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{"message":"User updated"}
2016-02-05 03:47:34 -06:00
## Get Organisations for user
2016-02-03 00:59:22 -06:00
`GET /api/users/:id/orgs`
**Example Request**:
GET /api/users/1/orgs HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
[
{
"orgId":1,
"name":"Main Org.",
"role":"Admin"
}
]
## User
2016-02-05 03:47:34 -06:00
## Actual User
2016-02-03 00:59:22 -06:00
`GET /api/user`
**Example Request**:
GET /api/user HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{
"email":"admin@mygraf.com",
"name":"Admin",
"login":"admin",
"theme":"light",
"orgId":1,
"isGrafanaAdmin":true
}
2016-02-05 03:47:34 -06:00
## Change Password
2016-02-03 00:59:22 -06:00
`PUT /api/user/password`
Changes the password for the user
**Example Request**:
PUT /api/user/password HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
{
"oldPassword": "old_password",
"newPassword": "new_password",
"confirmNew": "confirm_new_password"
}
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{"message":"User password changed"}
2016-02-05 03:47:34 -06:00
## Switch user context
2016-02-03 00:59:22 -06:00
`POST /api/user/using/:organisationId`
Switch user context to the given organisation.
**Example Request**:
POST /api/user/using/2 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{"message":"Active organization changed"}
2016-02-05 03:47:34 -06:00
## Organisations of the actual User
2016-02-03 00:59:22 -06:00
`GET /api/user/orgs`
Return a list of all organisations of the current user.
**Example Request**:
GET /api/user/orgs HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
[
{
"orgId":1,
"name":"Main Org.",
"role":"Admin"
}
]
2016-02-05 03:47:34 -06:00
## Star a dashboard
2016-02-03 00:59:22 -06:00
`POST /api/user/stars/dashboard/:dashboardId`
Stars the given Dashboard for the actual user.
**Example Request**:
POST /api/user/stars/dashboard/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{"message":"Dashboard starred!"}
2016-02-05 03:47:34 -06:00
## Unstar a dashboard
2016-02-03 00:59:22 -06:00
`DELETE /api/user/stars/dashboard/:dashboardId`
Deletes the starring of the given Dashboard for the actual user.
**Example Request**:
DELETE /api/user/stars/dashboard/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
2016-02-05 03:47:34 -06:00
{"message":"Dashboard unstarred"}