使用 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"
    }
  }]
}

当发生以下情况时会出现此错误:

  • 您缺乏所需角色(项目的 OWNER/ADMIN,公司为 OWNER)
  • 您尝试移除项目 OWNER
  • 用户不属于该项目/公司

重要考虑事项

  • 数据保留:用户移除是不可逆的。虽然用户失去访问权限,但其历史数据(评论、活动日志等)会保留以供审计使用。
  • 所有者保护:项目所有者不能从项目中移除。如有需要,请先转移所有权。
  • 账单影响:公司用户移除会自动更新您的订阅,如果您是按用户计费。
  • 电子邮件通知:公司移除会向被移除用户发送通知电子邮件。
  • 级联效应:公司移除影响所有项目,而项目移除仅限于特定项目。

相关操作

AI助手

响应是通过人工智能生成的,可能包含错误。

我能帮您什么?

随时问我关于 Blue 或本文档的任何问题。

输入发送 • Shift+Enter 换行 • ⌘I 打开