管理員與權限
透過 scope 指定每位管理員可以管理的組織、商家或組別。
可用操作
| Method | Path | 用途 |
|---|---|---|
GET | /v1/managers | 查詢目前可見的管理員與 scope |
POST | /v1/managers | 新增管理員,並設定管理 scope |
PUT | /v1/manager/{managerId}/profile | 更新管理員名稱 |
PUT | /v1/manager/{managerId}/roles | 新增、移除或替換管理 scope |
Scope 與角色
目前管理員的角色一律為 manager,實際可管理的資源由 unit 與 scope 決定:
| 管理層級 | unit | scope 應填的 ID | 管理範圍 |
|---|---|---|---|
| 組織(全集團) | organization | Organization ID,例如 tjticx | 該組織及其下的商家與組別 |
| 商家(單店) | merchant | Merchant ID,例如 tkfv5t | 該商家及其下的組別 |
| 組別(例如外場) | squad | Squad ID,例如 sqmmhw5vonCzo | 指定組別 |
scope 必須使用 unit 所指層級的 ID,不能填名稱或其他層級的 ID。例如 unit: squad 時,scope 應填外場的 Squad ID sqmmhw5vonCzo,不是台北信義店的 Merchant ID tkfv5t。
建立管理員時不需在多種角色之間選擇;只需指定 manager 應管理的 scope。使用這支 API 的 Service Account 也必須有權限管理本次送出的每一個 scope。
公開 POST /v1/managers 目前只能建立 Merchant 或 Squad scope 的主管;Organization 主管須由 FREONE 後台建立。
變更管理範圍
PUT /v1/manager/{managerId}/roles 中的每個項目代表一個變更:
- 只提供
newRole:新增一個managerscope。 - 只提供
oldRole:移除一個已有的managerscope。 - 同時提供
oldRole與newRole:將原有的managerscope 替換為新 scope。
例如,以下請求會為管理員新增一個商家範圍的 manager 權限:
{
"roles": [
{
"scope": "merchant-id",
"unit": "merchant",
"newRole": "manager"
}
]
}
一次請求不會只成功一部分
一次新增或調整多個 scope 時,請先確認 Service Account 可以管理所有目標範圍。只要其中一個 scope 沒有權限,整次請求都不會生效;其他已授權的 scope 也不會單獨更新。
完整 scope 欄位及回應格式請參考 Manager API。