创建用户接口

在当前组织创建用户,设置姓名、联系方式、初始密码和部门归属,并可选择是否分配席位。未提供部门时,服务端将用户归入根部门;响应中的 qid 用于后续更新或删除。

所需权限

所需权限资源Scope资源服务
用户与部门管理(管理)user-directoryadmin.v1.user-directory.manageqwenwork-biz-service

POST /api/openapi/v1/users

认证与请求头

使用应用 API Key 调用。当前接口校验上方独立 Scope;读取、管理与执行权限互不包含。

名称位置类型必填说明示例
Authorizationheaderstring应用 API Key,使用 Bearer 方式传递。Bearer qwk_\\*
X-Request-Idheaderstring可选的调用追踪标识;未传入时由服务端生成。req-20260831-001

请求参数

名称位置类型必填说明示例
Idempotency-Keyheaderstring必填本次写操作的幂等键。同一操作重试时复用相同键和请求内容,避免重复处理。"<string>"
accountbodystring用户的登录账号。 最多字符数:255。"<string>"
department_idsbodyarray | null用户所属部门的标识列表。 最多项数:50。["<string>"]
emailbodystring · email用户的邮箱地址。 最多字符数:255。"developer@example.com"
initial_passwordbodystring · password为新用户设置的初始密码;仅作为输入,响应不会返回。 最少字符数:12。 最多字符数:1024。"<string>"
job_numberbodystring企业为用户分配的工号。 最多字符数:255。"<string>"
namebodystring必填用户的姓名。 最多字符数:128。"<string>"
phonebodystring用户的电话号码。 最多字符数:20。"<string>"
seat_statusbodystring用户的席位状态:assigned 为已分配,unassigned 为未分配。"unassigned"

请求示例

将 <BASE_URL> 替换为企业部署的千问办公 API 服务地址,并填写实际参数。示例中的占位值不能直接用于请求。

curl --request POST --url '<BASE_URL>/api/openapi/v1/users' --header 'Authorization: Bearer <API_KEY>' --header 'Idempotency-Key: <UNIQUE_REQUEST_ID>' --header 'Content-Type: application/json' --data '{  "account": "<string>",  "department_ids": ["<string>"  ],  "email": "developer@example.com",  "initial_password": "<string>",  "job_number": "<string>",  "name": "<string>",  "phone": "<string>",  "seat_status": "unassigned"}'

响应

201 创建成功,返回新建的记录。

名称类型必填说明示例
accountstring用户的登录账号。"<string>"
department_idsarray | null用户所属部门的标识列表。["<string>"]
emailstring用户的邮箱地址。"<string>"
job_numberstring企业为用户分配的工号。"<string>"
namestring用户的姓名。"<string>"
phonestring用户的电话号码。"<string>"
qidstring · uuid用户在千问办公中的唯一标识,用户更新和删除接口使用此值。"<uuid>"
seat_statusstring用户的席位状态:assigned 为已分配,unassigned 为未分配。"assigned"
sourcestring用户来源:manual 为手动管理,directory-sync 为通讯录同步。"manual"
statusstring账号状态:pending 为待激活,active 为已激活,disabled 为已禁用。"pending"
updated_atstring · date-time此记录最后一次更新的时间。"2026-08-27T10:00:00Z"
{
  "account": "<string>",
  "department_ids": [
    "<string>"
  ],
  "email": "<string>",
  "job_number": "<string>",
  "name": "<string>",
  "phone": "<string>",
  "qid": "<uuid>",
  "seat_status": "assigned",
  "source": "manual",
  "status": "pending",
  "updated_at": "2026-08-27T10:00:00Z"
}

default 请求失败,返回错误码和错误详情。

名称类型必填说明示例
codestring用于程序判断错误原因的稳定业务错误码。"<string>"
detailstring便于阅读的错误说明。"<string>"
detailsOpenapiErrorDetails字段校验失败时的详细信息。{"field":"<string>","reason":"<string>","suggestion":"<string>"}
details.fieldstring未通过校验的请求字段。"<string>"
details.reasonstring稳定的校验失败原因,用于判断字段为何不合法。"<string>"
details.suggestionstring建议采用的规范化字段值。"<string>"
errorstring稳定的 HTTP 错误类型。"<string>"
{
  "code": "<string>",
  "detail": "<string>",
  "details": {
    "field": "<string>",
    "reason": "<string>",
    "suggestion": "<string>"
  },
  "error": "<string>"
}