查询部门列表接口

查询组织的部门目录,并按关键词或上级部门筛选。返回部门标识及父子关系,可用于构建部门选择器或填写用户的 department_ids。

所需权限

所需权限资源Scope资源服务
用户与部门信息读取(读取)user-directoryadmin.v1.user-directory.readqwenwork-biz-service

GET /api/openapi/v1/departments

认证与请求头

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

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

请求参数

名称位置类型必填说明示例
keywordquerystring用于筛选此列表的搜索关键词。"<string>"
parent_idquerystring · uuid上级部门标识,用于查询其下级部门。"<uuid>"
pagequeryinteger · int64请求的页码,从 1 开始。 默认值:1。 最小值:1。1
page_sizequeryinteger · int64每页返回的记录数量。 默认值:20。 最小值:1。 最大值:100。20

请求示例

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

curl --request GET --url '<BASE_URL>/api/openapi/v1/departments?keyword=<keyword>&parent_id=<parent_id>&page=1&page_size=20' --header 'Authorization: Bearer <API_KEY>'

响应

200 请求成功,返回当前或更新后的数据。

名称类型必填说明示例
itemsarray | null符合查询条件的当前页记录列表。[{"department_id":"<uuid>","external_id":"<string>","name":"<string>","order":0,"parent_id":"<string>"}]
items[].department_idstring · uuid相关部门的标识。"<uuid>"
items[].external_idstring来源系统中的标识,用于关联外部对象。"<string>"
items[].namestring部门的名称。"<string>"
items[].orderinteger · int64对象在列表中的排序值。0
items[].parent_idstring | null上级部门的标识。"<string>"
pageinteger · int64当前结果页的页码,从 1 开始。0
page_sizeinteger · int64每页返回的记录数。0
totalinteger · int64符合查询条件的记录总数。0
{
  "items": [
    {
      "department_id": "<uuid>",
      "external_id": "<string>",
      "name": "<string>",
      "order": 0,
      "parent_id": "<string>"
    }
  ],
  "page": 0,
  "page_size": 0,
  "total": 0
}

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>"
}