# 批量查询当前版本的自定义组织信息

根据传入的筛选条件批量查询自定义组织信息。不传任何筛选条件，默认获得该租户下所有的自定义组织数据。
**注意事项**：- 该接口只返回当前生效的自定义组织，未来生效的自定义组织不返回
- 请求体入参不填写默认为空，不参与筛选
- 所有筛选项可一起使用，之间为 AND 关系
- 延迟说明：数据库主从延迟 2s 以内，即：直接创建自定义组织后 2s 内调用此接口可能查询不到数据。
- 在筛选 ID 和 查询字段对象个数过多时，可能出现超时现象，请减少筛选项和字段对象个数。阻塞性问题请联系[技术支持](https://applink.feishu.cn/TLJpeNdW)

## 请求

基本 | &nbsp;
---|---
HTTP URL | https://open.feishu.cn/open-apis/corehr/v2/custom_orgs/query
HTTP Method | POST
接口频率限制 | [5 次/秒](https://open.feishu.cn/document/ukTMukTMukTM/uUzN04SN3QjL1cDN)
支持的应用类型 | Custom App、Store App
权限要求<br>**调用该 API 所需的权限。开启其中任意一项权限即可调用**<br>开启任一权限即可 | 获取自定义组织信息(corehr:custom_org:read)<br>读写自定义组织信息(corehr:custom_org:write)
字段权限要求 | **注意事项**：该接口返回体中存在下列敏感字段，仅当开启对应的权限后才会返回；如果无需获取这些字段，则不建议申请<br>获取用户 user ID(contact:user.employee_id:readonly)

### 请求头

名称 | 类型 | 必填 | 描述
---|---|---|---
Authorization | string | 是 | `tenant_access_token`<br>**值格式**："Bearer `access_token`"<br>**示例值**："Bearer t-7f1bcd13fc57d46bac21793a18e560"<br>[了解更多：如何选择与获取 access token](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-choose-which-type-of-token-to-use)
Content-Type | string | 是 | **固定值**："application/json; charset=utf-8"

### 查询参数

名称 | 类型 | 必填 | 描述
---|---|---|---
page_size | int | 是 | 分页大小，最大 100<br>**示例值**：100<br>**数据校验规则**：<br>- 取值范围：`1` ～ `100`
page_token | string | 否 | 分页标记，第一次请求不填，表示从头开始遍历；分页查询结果还有更多项时会同时返回新的 page_token，下次遍历可采用该 page_token 获取查询结果<br>**示例值**：6891251722631890445
user_id_type | string | 否 | 用户 ID 类型<br>**示例值**：people_corehr_id<br>**可选值有**：<br>- open_id：标识一个用户在某个应用中的身份。同一个用户在不同应用中的 Open ID 不同。[了解更多：如何获取 Open ID](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-openid)<br>- union_id：标识一个用户在某个应用开发商下的身份。同一用户在同一开发商下的应用中的 Union ID 是相同的，在不同开发商下的应用中的 Union ID 是不同的。通过 Union ID，应用开发商可以把同个用户在多个应用中的身份关联起来。[了解更多：如何获取 Union ID？](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-union-id)<br>- user_id：标识一个用户在某个租户内的身份。同一个用户在租户 A 和租户 B 内的 User ID 是不同的。在同一个租户内，一个用户的 User ID 在所有应用（包括商店应用）中都保持一致。User ID 主要用于在不同的应用间打通用户数据。[了解更多：如何获取 User ID？](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-user-id)<br>- people_corehr_id：以飞书人事的 ID 来识别用户<br>**默认值**：`people_corehr_id`<br>**当值为 `user_id`，字段权限要求**：<br>获取用户 user ID(contact:user.employee_id:readonly)

### 请求体

名称 | 类型 | 必填 | 描述
---|---|---|---
object_api_name | string | 是 | 组织类型编码，可在「飞书人事-设置-组织设置」中相应的自定义组织目录下查看<br>**示例值**："custom_org_01"
org_fields | string\[\] | 否 | 需要返回的字段列表。字段可填写的列表如下：<br>- names<br>- code<br>- parent_id<br>- manager_ids<br>- description<br>- effective_time<br>- org_roles<br>- active<br>- org_id<br>- custom_fields(自定义字段，需传入具体的"custom_api_name")<br>详细见[获取自定义字段列表](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/query) ,比如:"shifouleixing_7795__c"<br>**示例值**：["names"]<br>**数据校验规则**：<br>- 长度范围：`0` ～ `200`
org_role_fields | string\[\] | 否 | 需要返回的组织角色授权信息的列表。<br>- org_role_fields 可选两种值<br>- 角色key，可以通过页面「飞书人事-设置-组织配置」选择对应自定义组织，「字段配置-字段编码」获取<br>- 角色ID，可以通过[批量获取角色列表](https://open.larkoffice.com/document/server-docs/corehr-v1/authorization/list) 获取，数据为返回数据中的 data.items.id 值。筛选条件data.items.group_type == 3（组织角色），data.items.org_truncation 关联的组织有且仅有一个，data.items.org_truncation.org_key 等于当前查询自定义组织 object_api_name<br>**示例值**：["hcm_corehr_xxxx"]<br>**数据校验规则**：<br>- 长度范围：`0` ～ `200`
org_ids | string\[\] | 否 | 需要查询的组织 ID 列表。<br>- ID 为 [获取自定义组织](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/custom_org/query)返回的 org_id 字段。<br>- 不传不做 ID 相关限制<br>**示例值**：["7140964208476371111"]<br>**数据校验规则**：<br>- 长度范围：`0` ～ `200`
code | string | 否 | 只返回和传入编码相同的自定义组织数据。<br>- 编码为[获取自定义组织](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/custom_org/query)返回的 code 字段。<br>- 不传默认不做这个限制<br>**示例值**："MDPD00000023"
parent_id | string | 否 | 只返回 parent_id = 传入值 的自定义组织数据。<br>- parent_id 为[获取自定义组织](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/custom_org/query)返回的 org_id 字段。<br>- 不传默认不做这个限制<br>- 自定义组织 ID 类型需要为 ==people_corehr_id==<br>**示例值**："7140964208476371111"
active | boolean | 否 | 只返回启用/停用的自定义组织数据。<br>- 不传默认不做这个限制<br>**示例值**：true
need_match_rule | boolean | 否 | 是否返回匹配规则。<br>- 为 true 返回 ==match_rule_groups== 字段，否则不返回。<br>**示例值**：false

### 请求体示例
```json
{
    "object_api_name": "custom_org_01",
    "org_fields": [
        "names"
    ],
    "org_role_fields": [
        "hcm_corehr_xxxx"
    ],
    "org_ids": [
        "7140964208476371111"
    ],
    "code": "MDPD00000023",
    "parent_id": "7140964208476371111",
    "active": true,
    "need_match_rule": false
}
```

## 响应

### 响应体

名称 | 类型 | 描述
---|---|---
code | int | 错误码，非 0 表示失败
msg | string | 错误描述
data | \- | \-
items | custom_org\[\] | 自定义组织信息列表
object_api_name | string | 组织类型编码
names | i18n\[\] | 组织名称
lang | string | 语言，中文值是 zh-CN，英文值是 en-US
value | string | 文本内容
code | string | 编码
parent_id | string | 上级自定义组织 ID<br>- 若查询的是一级自定义组织，则该字段不展示
manager_ids | string\[\] | 负责人 ID 列表<br>- 返回的 ID 类型为 ==employment_id==<br>- 详细信息可通过[【搜索员工信息】](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/employee/search) 或 [【批量查询员工】](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/employee/batch_get) 接口获取
description | i18n\[\] | 自定义组织描述
lang | string | 语言，中文值是 zh-CN，英文值是 en-US
value | string | 文本内容
effective_time | string | 当前版本生效日期<br>- 返回格式：YYYY-MM-DD 00:00:00（最小单位到日）<br>- 日期范围:1900-01-01 00:00:00～9999-12-31 00:00:00<br>- 详情可以参考[时间轴介绍](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/about-timeline-version)
org_roles | org_role\[\] | 组织角色列表
api_name | string | 角色key<br>- 可以通过页面「飞书人事-设置-组织配置」选择对应自定义组织，「字段配置-字段编码」获取
security_group_id | string | 角色ID<br>- 可以通过[批量获取角色列表](https://open.larkoffice.com/document/server-docs/corehr-v1/authorization/list) 获取，数据为返回数据中的 data.items.id 值。筛选条件data.items.group_type == 3（组织角色），data.items.org_truncation 关联的组织有且仅有一个，data.items.org_truncation.org_key 等于当前查询自定义组织 object_api_name
employment_ids | string\[\] | 直接授权的员工 ID 列表<br>- 返回的 ID 类型为 ==people_corehr_id==<br>- 详细信息可通过[【搜索员工信息】](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/employee/search) 或 [【批量查询员工】](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/employee/batch_get) 接口获取
inherit_employment_ids | string\[\] | 由于有上级组织权限而自动获取下级组织权限的员工 ID 列表<br>- 返回的 ID 类型为 ==people_corehr_id==<br>- 详细信息可通过[【搜索员工信息】](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/employee/search) 或 [【批量查询员工】](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/employee/batch_get) 接口获取
match_rule_groups | match_rules\[\] | 自动匹配的规则组。<br>- 需要在「飞书人事-设置-组织设置」中打开对应组织类型的自动匹配开关后，此字段才会返回相关值。<br>- 各个==match_rule_groups==之间是并集关系<br>- 各个==match_rules==之间是交集关系
match_rules | match_rule\[\] | 匹配规则列表，组内是交集关系
left_value | string | 左值<br>**可选值有**：<br>- department：部门<br>- department_hierarchy：部门（含下级）<br>- work_location：工作地点<br>- work_location_hierarchy：工作地点（含下级）<br>- cost_center：成本中心<br>- cost_center_hierarchy：成本中心（含下级）<br>- job：职务<br>- job_level：职级<br>- job_family：序列<br>- job_family_hierarchy：序列（含下级）<br>- employee_type：人员类型
operator | string | 操作符<br>**可选值有**：<br>- contains：包含<br>- notContains：不包含
right_values | string\[\] | 右值，填写左值对应的 ID 列表。<br>- ==department==和==department_hierarchy==：可通过[查询单个部门](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/department/get)获取详情，ID 类型需要为 ==people_corehr_department_id==。<br>- ==work_location==和==work_location_hierarchy==：可通过[查询单个地点](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/location/get)获取详情。<br>- ==cost_center==和==cost_center_hierarchy==：可通过[搜索成本中心信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/cost_center/search)获取详情。<br>- ==job==：可通过[查询单个职务](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/job/get)获取详情。<br>- ==job_level==：可通过[查询单个职级](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/job_level/get)获取详情。<br>- ==job_family==和==job_family_hierarchy==：可通过[查询单个序列](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/job_family/get)获取详情。<br>- ==employee_type==：可通过[查询人员类型](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/employee_type/get)获取详情。
active | boolean | 自定义组织是否启用
org_id | string | 自定义组织 ID
custom_fields | custom_field_data\[\] | 自定义字段类型，详细见[获取自定义字段列表](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/query)
custom_api_name | string | 自定义字段 API Name，即自定义字段的唯一标识
name | custom_name | 自定义字段名称
zh_cn | string | 中文
en_us | string | 英文
type | int | 自定义字段类型，详细见[获取自定义字段列表](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/query)
value | string | 字段值，是json转义后的字符串，根据元数据定义不同，字段格式不同。如：```("123", "123.23", "true", [\"id1\",\"id2\"], "2006-01-02 15:04:05")```
page_token | string | 分页标记，当 has_more 为 true 时，会同时返回新的 page_token，否则不返回 page_token
has_more | boolean | 是否还有更多项

### 响应体示例
```json
{
    "code": 0,
    "msg": "success",
    "data": {
        "items": [
            {
                "object_api_name": "custom_org_01",
                "names": [
                    {
                        "lang": "zh-CN",
                        "value": "中文示例"
                    }
                ],
                "code": "MDPD00000023",
                "parent_id": "6862995757234914824",
                "manager_ids": [
                    "6862995757234914824"
                ],
                "description": [
                    {
                        "lang": "zh-CN",
                        "value": "中文示例"
                    }
                ],
                "effective_time": "2020-01-01",
                "org_roles": [
                    {
                        "api_name": "hcm_corehr_xxx",
                        "security_group_id": "7034393015968122400",
                        "employment_ids": [
                            "123456789"
                        ],
                        "inherit_employment_ids": [
                            "123456789"
                        ]
                    }
                ],
                "match_rule_groups": [
                    {
                        "match_rules": [
                            {
                                "left_value": "department",
                                "operator": "contains",
                                "right_values": [
                                    "123456789"
                                ]
                            }
                        ]
                    }
                ],
                "active": true,
                "org_id": "6862995757234914824",
                "custom_fields": [
                    {
                        "custom_api_name": "name",
                        "name": {
                            "zh_cn": "自定义姓名",
                            "en_us": "Custom Name"
                        },
                        "type": 1,
                        "value": "\"231\""
                    }
                ]
            }
        ],
        "page_token": "eVQrYzJBNDNONlk4VFZBZVlSdzlKdFJ4bVVHVExENDNKVHoxaVdiVnViQT0=",
        "has_more": true
    }
}
```

### 错误码

HTTP状态码 | 错误码 | 描述 | 排查建议
---|---|---|---
400 | 1161001 | param is invalid | 校验传参是否正确
503 | 1161204 | Requset timeout | 联系飞书人事  [Oncall](https://applink.feishu.cn/TLJpeNdW)
429 | 1161604 | QPS over limit | 联系飞书人事 [Oncall](https://applink.feishu.cn/TLJpeNdW)

