# What this PR does - add Grafana IDs to users and teams public API endpoints - update Schedules public API docs to reflect the fact that [we allow filtering by `team_id`](https://github.com/grafana/oncall/blob/dev/engine/apps/public_api/views/schedules.py#L42) ## Checklist - [x] Unit, integration, and e2e (if applicable) tests updated - [x] Documentation added (or `pr:no public docs` PR label added if not required) - [x] Added the relevant release notes label (see labels prefixed w/ `release:`). These labels dictate how your PR will show up in the autogenerated release notes.
2.2 KiB
2.2 KiB
| canonical | title | weight | refs | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| https://grafana.com/docs/oncall/latest/oncall-api-reference/teams/ | Grafana OnCall teams HTTP API | 0 |
|
Grafana OnCall teams HTTP API
Get a team
This endpoint retrieves the team object.
curl "{{API_URL}}/api/v1/teams/TI73TDU19W48J/" \
--request GET \
--header "Authorization: meowmeowmeow" \
--header "Content-Type: application/json"
The above command returns JSON structured in the following way:
{
"id": "TI73TDU19W48J",
"grafana_id": 123,
"name": "my test team",
"email": "",
"avatar_url": "/avatar/3f49c15916554246daa714b9bd0ee398"
}
HTTP request
GET {{API_URL}}/api/v1/teams/<TEAM_ID>/
| Parameter | Unique | Description |
|---|---|---|
id |
Yes/org | OnCall team ID |
grafana_id |
Yes/org | Grafana team ID |
name |
Yes/org | Team name |
email |
Yes/org | Team e-mail |
avatar_url |
Yes | Avatar URL of the Grafana team |
List Teams
curl "{{API_URL}}/api/v1/teams/" \
--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": "TI73TDU19W48J",
"grafana_id": 123,
"name": "my test team",
"email": "",
"avatar_url": "/avatar/3f49c15916554246daa714b9bd0ee398"
}
],
"page_size": 50,
"current_page_number": 1,
"total_pages": 1
}
Note
: The response is paginated. You may need to make multiple requests to get all records.
The following available filter parameter should be provided as a GET argument:
name(Exact match)
HTTP request
GET {{API_URL}}/api/v1/teams/