

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 組織 API
<a name="v12-Grafana-API-Organization"></a>

使用 Organization API 與 Amazon Managed Grafana 工作區中的組織合作。

**注意**  
若要搭配 Amazon Managed Grafana 工作區使用 Grafana API，您必須擁有有效的服務帳戶字符。您可以在 API 請求的 `Authorization` 欄位中包含此項目。

## 取得目前的組織
<a name="v12-Grafana-API-Organization-getcurrent"></a>

```
GET /api/org/
```

**範例請求**

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

**回應範例**

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

{
  "id":1,
  "name":"Main Org."
}
```

## 取得目前組織內的所有使用者
<a name="v12-Grafana-API-Organization-getusers"></a>

```
GET /api/org/users
```

必要許可：具有 範圍`org.users:read`的動作 `users:*`

**範例請求**

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

**回應範例**

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

[
  {
    "orgId": 1,
    "userId": 1,
    "email": "admin@localhost",
    "avatarUrl": "/avatar/46d229b033af06a191ff2267bca9ae",
    "login": "admin",
    "role": "Admin",
    "lastSeenAt": "2019-08-09T11:02:49+02:00",
    "lastSeenAtAge": "< 1m"
  }
]
```

## 取得目前組織內的所有使用者 （查詢）
<a name="v12-Grafana-API-Organization-getuserslookup"></a>

```
GET /api/org/users/lookup
```

傳回目前組織內的所有使用者，但詳細資訊較不詳細。具有組織管理員角色、任何資料夾的管理員或任何團隊的管理員皆可存取。主要供 Grafana UI 使用，以在新增團隊成員和刪除資料夾/儀表板許可時提供使用者清單。

**範例請求**

```
GET /api/org/users/lookup HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**回應範例**

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

[
  {
    "userId": 1,
    "login": "admin",
    "avatarUrl": "/avatar/46d229b033af06a191ff2267bca9ae"
  }
]
```

## 更新指定的使用者
<a name="v12-Grafana-API-Organization-updateuser"></a>

```
PATCH /api/org/users/:userId
```

必要許可：具有 範圍`org.users.role:update`的動作 `users:*`

**範例請求**

```
PATCH /api/org/users/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

{
  "role": "Viewer",
}
```

**回應範例**

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

{"message":"Organization user updated"}
```

## 刪除目前組織中的使用者
<a name="v12-Grafana-API-Organization-deleteuser"></a>

```
DELETE /api/org/users/:userId
```

必要許可：具有 範圍`org.users:remove`的動作 `users:*`

**範例請求**

```
DELETE /api/org/users/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**回應範例**

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

{"message":"User removed from organization"}
```

## 更新目前的組織
<a name="v12-Grafana-API-Organization-update"></a>

```
PUT /api/org
```

**範例請求**

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

{
  "name":"Main Org."
}
```

**回應範例**

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

{"message":"Organization updated"}
```

## 將使用者新增至目前的組織
<a name="v12-Grafana-API-Organization-adduser"></a>

```
POST /api/org/users
```

必要許可：具有 範圍`org.users:add`的動作 `users:*`

**範例請求**

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

{
  "role": "Admin",
  "loginOrEmail": "admin"
}
```

**回應範例**

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

{"message":"User added to organization","userId":1}
```