使用 Blue API 從專案或公司中移除使用者。
移除使用者
本頁面涵蓋如何從專案和公司中移除使用者。移除使用者是一個永久性的操作,會解除使用者在所有紀錄中的指派並移除其訪問權限,但其歷史數據會保留以供審計用途。
從專案中移除使用者
從特定專案中移除使用者,同時保留其公司訪問權限。
基本範例
mutation {
removeProjectUser(
input: {
projectId: "project-id"
userId: "user-id"
}
) {
success
operationId
}
}
回應範例
{
"data": {
"removeProjectUser": {
"success": true,
"operationId": null
}
}
}
注意: operationId
欄位目前不會被此變更填充,並將返回 null
。
從公司中移除使用者
從整個公司中移除使用者,這會影響所有專案。
基本範例
mutation {
removeCompanyUser(
input: {
companyId: "company-id"
userId: "user-id"
}
)
}
回應範例
{
"data": {
"removeCompanyUser": true
}
}
輸入參數
RemoveProjectUserInput
參數 | 類型 | 必需 | 描述 |
---|---|---|---|
projectId |
String! | ✅ 是 | 專案的 ID(不是 slug) |
userId |
String! | ✅ 是 | 要移除的使用者 ID |
RemoveCompanyUserInput
參數 | 類型 | 必需 | 描述 |
---|---|---|---|
companyId |
String! | ✅ 是 | 公司的 ID 或 slug |
userId |
String! | ✅ 是 | 要移除的使用者 ID |
回應欄位
RemoveProjectUser 回應
欄位 | 類型 | 描述 |
---|---|---|
success |
Boolean! | 操作是否成功 |
operationId |
String | 操作的唯一識別碼(目前返回 null ) |
RemoveCompanyUser 回應
removeCompanyUser
變更返回一個簡單的 Boolean
值:
true
- 使用者已成功移除
所需權限
專案使用者移除
角色 | 可以移除使用者 |
---|---|
OWNER |
✅ 是 |
ADMIN |
✅ 是 |
MEMBER |
❌ 否 |
READ_ONLY |
❌ 否 |
重要注意事項:
- 您無法從專案中移除擁有
OWNER
角色的使用者 - 系統防止移除專案擁有者,以維護專案所有權的完整性
公司使用者移除
角色 | 可以移除使用者 |
---|---|
OWNER |
✅ 是 |
ADMIN |
❌ 否 |
MEMBER |
❌ 否 |
READ_ONLY |
❌ 否 |
注意: 只有公司擁有者可以從公司中移除使用者。解析器強制執行僅限擁有者的訪問權限以進行公司使用者移除操作。
副作用
專案移除
- 移除該專案中使用者的所有待辦事項指派
- 刪除使用者的專案資料夾
- 移除專案使用者關係
- 發送即時更新以通知其他使用者
- 創建審計日誌條目
公司移除
- 跨所有專案的級聯刪除:
- 移除所有公司專案中的所有待辦事項指派
- 移除所有專案使用者資料夾
- 從所有公司專案中移除使用者
- 移除公司使用者資料夾
- 從公司中移除使用者
- 向被移除的使用者發送移除通知電子郵件
- 更新計費(如果按使用者計費):
- 重新計算活躍使用者數量
- 更新 Stripe 訂閱數量
- 創建審計日誌條目
錯誤回應
專案未找到
{
"errors": [{
"message": "Project was not found.",
"extensions": {
"code": "PROJECT_NOT_FOUND"
}
}]
}
使用者未找到
{
"errors": [{
"message": "User was not found.",
"extensions": {
"code": "USER_NOT_FOUND"
}
}]
}
未授權錯誤
{
"errors": [{
"message": "You are not authorized.",
"extensions": {
"code": "FORBIDDEN"
}
}]
}
公司未找到(removeCompanyUser 只有)
{
"errors": [{
"message": "Company was not found.",
"extensions": {
"code": "COMPANY_NOT_FOUND"
}
}]
}
當以下情況發生時,會出現此錯誤:
- 您缺少所需的角色(專案的擁有者/管理員,公司的擁有者)
- 您嘗試移除專案擁有者
- 該使用者不是專案/公司的成員
重要考量
- 數據保護:使用者移除是不可逆的。雖然使用者失去訪問權限,但其歷史數據(評論、活動日誌等)會保留以供審計用途。
- 擁有者保護:專案擁有者無法從專案中移除。如有需要,請先轉移所有權。
- 計費影響:公司使用者移除會自動更新您的訂閱,如果您是按使用者計費的話。
- 電子郵件通知:公司移除會向被移除的使用者發送通知電子郵件。
- 級聯效果:公司移除會影響所有專案,而專案移除僅限於該特定專案。