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

1.9 KiB

+++ 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
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:

{
    "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

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:

{
    "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/