oncall-engine/docs/sources/oncall-api-reference/users.md
Michael Derynck 6b40f95033 World, meet OnCall!
Co-authored-by: Eve832 <eve.meelan@grafana.com>
    Co-authored-by: Francisco Montes de Oca <nevermind89x@gmail.com>
    Co-authored-by: Ildar Iskhakov <ildar.iskhakov@grafana.com>
    Co-authored-by: Innokentii Konstantinov <innokenty.konstantinov@grafana.com>
    Co-authored-by: Julia <ferril.darkdiver@gmail.com>
    Co-authored-by: maskin25 <kengurek@gmail.com>
    Co-authored-by: Matias Bordese <mbordese@gmail.com>
    Co-authored-by: Matvey Kukuy <motakuk@gmail.com>
    Co-authored-by: Michael Derynck <michael.derynck@grafana.com>
    Co-authored-by: Richard Hartmann <richih@richih.org>
    Co-authored-by: Robby Milo <robbymilo@fastmail.com>
    Co-authored-by: Timur Olzhabayev <timur.olzhabayev@grafana.com>
    Co-authored-by: Vadim Stepanov <vadimkerr@gmail.com>
    Co-authored-by: Yulia Shanyrova <yulia.shanyrova@grafana.com>
2022-06-03 08:09:47 -06:00

91 lines
No EOL
1.9 KiB
Markdown

+++
title = "Grafana OnCall Users HTTP API"
aliases = ["/docs/grafana-cloud/oncall/oncall-api-reference/users/"]
weight = 1500
+++
# Get a user
This endpoint retrieves the user object.
```shell
```shell
curl "{{API_URL}}/api/v1/users/current/" \
--request GET \
--header "Authorization: meowmeowmeow" \
--header "Content-Type: application/json"
```
The above command returns JSON structured in the following way:
```json
{
"id": "U4DNY931HHJS5",
"email": "public-api-demo-user-1@grafana.com",
"slack": [
{
"user_id": "UALEXSLACKDJPK",
"team_id": "TALEXSLACKDJPK"
}
],
"username": "alex",
"role": "admin"
}
```
**HTTP request**
`GET {{API_URL}}/api/v1/users/<USER_ID>/`
Use `{{API_URL}}/api/v1/users/current` to retrieve the current user.
| Parameter | Unique | Description |
|-----------|:------:|:------------|
`id` | Yes/org | User ID
`email` | Yes/org | User e-mail
`slack` | Yes/org | List of user IDs from connected Slack. User linking key is e-mail.
`username` | Yes/org | User username
`role` | No | One of: `user`, `observer`, `admin`.
# List Users
```shell
curl "{{API_URL}}/api/v1/users/" \
--request GET \
--header "Authorization: meowmeowmeow" \
--header "Content-Type: application/json"
```
The above command returns JSON structured in the following way:
```json
{
"count": 1,
"next": null,
"previous": null,
"results": [
{
"id": "U4DNY931HHJS5",
"email": "public-api-demo-user-1@grafana.com",
"slack": [
{
"user_id": "UALEXSLACKDJPK",
"team_id": "TALEXSLACKDJPK"
}
],
"username": "alex",
"role": "admin"
}
]
}
```
This endpoint retrieves all users.
The following available filter parameter should be provided as a `GET` argument:
* `username` (Exact match)
**HTTP request**
`GET {{API_URL}}/api/v1/users/`