

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# API Tim
<a name="Grafana-API-Team"></a>

Gunakan API Tim untuk bekerja dengan tim di ruang kerja Grafana yang Dikelola Amazon. Semua tindakan dalam API ini mengharuskan Anda memiliki peran Admin.

**catatan**  
Untuk menggunakan Grafana API dengan ruang kerja Grafana Amazon Managed, Anda harus memiliki token Grafana API yang valid. Anda menyertakan ini di `Authorization` bidang dalam permintaan API. Untuk informasi tentang cara membuat token untuk mengautentikasi panggilan API Anda, lihat[Otentikasi dengan token](authenticating-grafana-apis.md).

## Pencarian tim dengan pagination
<a name="Grafana-API-Team-Searchpaging"></a>

```
GET /api/teams/search?perpage=50&page=1&query=myteam
```

atau

```
GET /api/teams/search?name=myteam
```

**Permintaan contoh**

```
GET /api/teams/search?perpage=10&page=1&query=myteam HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Menggunakan parameter kueri**

Nilai default untuk `perpage` parameter adalah 1000 dan untuk `page` parameter adalah 1.

`totalCount`Bidang dalam respons dapat digunakan untuk pagination daftar tim. Misalnya, `totalCount` jika 100 tim dan `perpage` parameter diatur ke 10, maka ada 10 halaman tim.

`query`Parameter opsional dan mengembalikan hasil di mana nilai query terkandung dalam `name` bidang. Nilai kueri dengan spasi harus dikodekan URL. Misalnya, `query=my%20team`.

**Menggunakan parameter nama**

`name`Parameter mengembalikan satu tim jika parameter cocok dengan `name` bidang.

**Contoh respon**

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

{
  "totalCount": 1,
  "teams": [
    {
      "id": 1,
      "orgId": 1,
      "name": "MyTestTeam",
      "email": "",
      "avatarUrl": "\/avatar\/3f49c15916554246daa714b9bd0ee39",
      "memberCount": 1
    }
  ],
  "page": 1,
  "perPage": 1000
```

Kode Status:
+ **200** - Dibuat
+ **401 - Tidak** Sah
+ **403** — Izin ditolak
+ **404** — Tim tidak ditemukan (jika mencari berdasarkan nama)

## Dapatkan tim dengan Id
<a name="Grafana-API-Team-getbyId"></a>

```
GET /api/teams/:id
```

**Permintaan contoh**

```
GET /api/teams/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Contoh respon**

```
HHTTP/1.1 200
Content-Type: application/json

{
  "id": 1,
  "orgId": 1,
  "name": "MyTestTeam",
  "email": "",
  "created": "2017-12-15T10:40:45+01:00",
  "updated": "2017-12-15T10:40:45+01:00"
}
```

## Menambahkan tim
<a name="Grafana-API-Team-add"></a>

Tim harus unik. `name` `name`Bidang diperlukan dan `orgId` bidang `email` dan opsional.

```
POST /api/teams
```

**Permintaan contoh**

```
POST /api/teams HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

{
  "name": "MyTestTeam",
  "email": "email@test.com",
  "orgId": 2
}
```

**Contoh respon**

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

{"message":"Team created","teamId":2}
```

Kode Status:
+ **200** - Dibuat
+ **401 - Tidak** Sah
+ **403** — Izin ditolak
+ **409** - Nama tim sudah ada

## Perbarui tim
<a name="Grafana-API-Team-update"></a>

```
PUT /api/teams/:id
```

Hanya `email` bidang `name` dan yang dapat diperbarui.

**Permintaan contoh**

```
PUT /api/teams/2 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
        
{
  "name": "MyTestTeam",
  "email": "email@test.com"
}
```

**Contoh respon**

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

{"message":"Team updated"}
```

Kode Status:
+ **200** - Dibuat
+ **401 - Tidak** Sah
+ **403** — Izin ditolak
+ **404** — Tim tidak ditemukan
+ **409** - Nama tim sudah ada

## Hapus tim dengan Id
<a name="Grafana-API-Team-deletebyId"></a>

```
DELETE /api/teams/:id
```

**Permintaan contoh**

```
DELETE /api/teams/2 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Contoh respon**

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

{"message":"Team deleted"}
```

Kode Status:
+ **200** - Dibuat
+ **401 - Tidak** Sah
+ **403** — Izin ditolak
+ **404** — Tim tidak ditemukan

## Dapatkan anggota tim
<a name="Grafana-API-Team-getmembers"></a>

```
GET /api/teams/:teamId/members
```

**Permintaan contoh**

```
GET /api/teams/1/members HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Contoh respon**

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

[
  {
    "orgId": 1,
    "teamId": 1,
    "userId": 3,
    "email": "user1@email.com",
    "login": "user1",
    "avatarUrl": "\/avatar\/1b3c32f6386b0185c40d359cdc733a7"
  },
  {
    "orgId": 1,
    "teamId": 1,
    "userId": 2,
    "email": "user2@email.com",
    "login": "user2",
    "avatarUrl": "\/avatar\/cad3c68da76e45d10269e8ef02f8e7"
  }
]
```

Kode Status:
+ **200** - Dibuat
+ **401 - Tidak** Sah
+ **403** — Izin ditolak

## Tambahkan anggota tim
<a name="Grafana-API-Team-addmember"></a>

```
POST /api/teams/:teamId/members
```

**Permintaan contoh**

```
POST /api/teams/1/members HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
      
{
  "userId": 2
}
```

**Contoh respon**

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

{"message":"Member added to Team"}
```

Kode Status:
+ **200** - Dibuat
+ **400** - Pengguna sudah dalam tim
+ **401 - Tidak** Sah
+ **403** — Izin ditolak
+ **404** — Tim tidak ditemukan

## Hapus anggota dari tim
<a name="Grafana-API-Team-removemember"></a>

```
DELETE /api/teams/:teamId/members/:userId
```

**Permintaan contoh**

```
DELETE /api/teams/2/members/3 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Contoh respon**

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

{"message":"Team Member removed"}
```

Kode Status:
+ **200** - Dibuat
+ **401 - Tidak** Sah
+ **403** — Izin ditolak
+ **404** — Tim bukan found/team anggota tidak ditemukan

## Dapatkan preferensi tim
<a name="Grafana-API-Team-getpreferences"></a>

```
GET /api/teams/:teamId/preferences
```

**Permintaan contoh**

```
GET /api/teams/2/preferences HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Contoh respon**

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

{
  "theme": "",
  "homeDashboardId": 0,
  "timezone": ""
}
```

## Perbarui preferensi tim
<a name="Grafana-API-Team-updatepreferences"></a>

```
PUT /api/teams/:teamId/preferences
```

**Permintaan contoh**

```
PUT /api/teams/2/preferences HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

{
  "theme": "dark",
  "homeDashboardId": 39,
  "timezone": "utc"
}
```

Skema tubuh JSON:
+ **tema** - Tentukan salah satu `light``dark`,, atau string kosong untuk menggunakan tema default.
+ **homeDashboardId**— Numerik `:id` dari dasbor. Default-nya adalah 0.
+ **zona waktu** - Tentukan salah satu `utc``browser`,, atau string kosong untuk menggunakan default. 

Menghilangkan parameter menyebabkan nilai saat ini diganti dengan nilai default sistem.

**Contoh respon**

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

{
  "message":"Preferences updated"
}
```