更新日期:     浏览次数:

1. 组织API列表

接口名称 URL 备注
新增组织 /gateway/openimport/open/dept/add
更新组织名称 /gateway/openimport/open/dept/update
删除组织 /gateway/openimport/open/dept/delete
根据orgId或department查询组织信息 /gateway/openimport/open/dept/get
查询全部组织信息 /gateway/openimport/open/dept/getall
查询更新部门信息 /gateway/openimport/open/dept/getAtTime
跨层次部门挪动 /gateway/openimport/open/dept/moveOrg
根据orgId更新组织名称 /gateway/openimport/open/dept/updateById
根据orgId删除组织 /gateway/openimport/open/dept/deleteById
设置隐藏部门或部门仅可见 /gateway/openimport/open/company/setOrgSecret
查询设置隐藏部门或者部门仅可见部门 /gateway/openimport/open/company/queryOrgSecret
更新组织排序码 /gateway/openimport/open/dept/updateWeightsById

组织长名称:根据组织层级包含本组织及所有上级组织的完整名称,它具有以下特点:

  1. 组织长名称在工作圈中具有唯一性
  2. 组织长名称中的各级组织以”\”为分隔符
  3. 组织长名称前不能包含工作圈名称

例如: “研发中心\移动平台产品部\开发部”

1.1. 新增组织

描述: 新增组织,每次新增记录不超过1000条,按照departments先后顺序进行排序。

URL: /gateway/openimport/open/dept/add?accessToken=xxxxxx

输入: 参见输入参数,其中data字段格式如下:

{
    "eid":String, //不必须,如果没有,则以外面的eid参数为准
    "departments": [String,…], //必填,组织长名称数组,单个组织长名称格式:"一级部门\\二级部门\\三级部门",如 : "研发中心\\移动平台产品部\\开发部"
    "weights": ["2","4","3"] //保证weights与departments长度一致,如果不传根部门,只传了子部门,根部门的排序码会依据子部门的排序码来生成 ,子部门排序码越小,生成的根部门排序码就也越小。
}

输出: 参见输出结果,如果组织全部创建成功,则data里返回[],如果有未创建成功的,则data中会有未创建成功的记录的具体信息,其中data字段格式如下:

[
    {
    "msgId":String, //组织长名称
    "msgCode":int, //消息码
    "msg":String //消息
    },…
]

1.2. 更新组织名称

描述: 更新组织名称,每次更新记录不超过1000条

注意:

  • 当前接口仅仅支持同级组织名称的变化,不包括组织层级变化(原组织和新组织必须在同级目录下)。如果需要将某一部门(包括所有下级部门)整体挪动到另外一个部门,请使用接口:跨层次部门挪动

URL: /gateway/openimport/open/dept/update?accessToken=xxxxxx

输入: 参见输入参数,其中data字段格式如下:

{
    "eid":String, //不必须,如果没有,则以外面的eid参数为准
    "departments": [{
        "department":String, //必填,原组织长名称
        "todepartment":String //必填,新组织长名称,路径中不存在的组织将会自动创建
    },...]
}

输出: 参见输出结果, 如果组织全部创建成功,则data里返回[],如果有未创建成功的,则data中会有未创建成功的记录的具体信息。其中data字段格式如下:

[{
    "msgId":String, //原组织长名称
    "msgCode":int, //消息码
    "msg":String //消息
},…]

1.3. 删除组织

描述: 根据组织长名称删除组织,如该组织及其子组织下存在“正常”的人员,则删除失败;若不存在“正常”的人员,则该组织及其子组织会被删除,同时把组织下“禁用”或“注销”的人员改为待分配状态

URL: /gateway/openimport/open/dept/delete?accessToken=xxxxxx

输入: 参见输入参数,其中data字段格式如下:

{
    "eid":String, //不必须,如果没有,则以外面的eid参数为准
    "departments": [String,…] //必填,要删除的组织长名称数组
}

输出: 参见输出结果,其中data字段格式如下:

[{
    "msgId":String, //组织长名称
    "msgCode":int, //消息码
    "msg":String //消息
},…]

1.4. 根据orgId或department查询组织信息

描述: 根据组织ID或组织长名称查询组织详细信息

URL: gateway/openimport/open/dept/get

输入: 参见输入参数,其中data字段格式如下:

根据部门orgId查询时:

{
    "array": [  //必填,orgId数组
        String,
        String
    ],
    "eid": String,  //不必须,如果没有,则以外面的eid参数为准
    "type": 0   //必填,查询类型,0:根据orgId查询
}

根据department查询时:

{
    "array": [  //必填,department数组,如:"开发部-22","bb\开发部-22\123123aaaa"
        String,
        String
    ],
    "eid": string,  //不必须,如果没有,则以外面的eid参数为准
    "type": 1   //必填,查询类型,1:根据department查询
}

输出示例:

{
    "data": [
        {
            "department": "bb\开发部-22",
            "id": "02008582-08dc-40a0-8d5b-c693f73d2798",
            "name": "开发部-22",
            "parentId": "1112e731-99f8-4ae2-8416-8fdee4fe067e",
            "weights": 101000
        },
        {
            "department": "bb\开发部-22\123123aaaa",
            "id": "de6d999b-ca77-11e7-9592-82e47cc7294a",
            "name": "123123aaaa",
            "parentId": "02008582-08dc-40a0-8d5b-c693f73d2798",
            "weights": 2147483647
        }
    ],
    "error": "",
    "errorCode": 100,
    "success": true
}

1.5. 查询全部组织信息

描述: 查询全部组织信息

URL: /gateway/openimport/open/dept/getall?accessToken=xxxxxx

输入: 参见输入参数,其中data字段格式如下:

{
    "eid":String //可不填,注册号,由于外面已有eid参数,此时data字段也可不填
}

输出: 参见输出结果,其中data字段格式如下:

[
    { //组织列表
    "id":String, //组织的id
    "parentId":String, //组织父Id
    "name":String, //组织名称
    "department":String, //组织长名称
    "weights":int //排序码
    },…
]

1.6. 查询更新部门信息

描述: 查询某个时点后有更新的部门信息

URL: /gateway/openimport/open/dept/getAtTime?accessToken=xxxxxx

输入: 参见输入参数,其中data字段格式如下:

{
    "eid":String, //不必须,如果没有,则以外面的eid参数为准
    "time":String //必填,查询时点,格式:“2014-08-02 01:40:38”
}

输出: 参见输出结果,其中data字段格式如下:

[
    {
    "id":String, //组织的id
    "parentId":String, //组织父Id
    "name":String, //组织名称
    "department":String, //组织长名称
    "weights":int, //排序码
    "changeType":String //1:新增 2:更新 3:删除
    },…
]

1.7. 跨层次部门挪动

描述: 将某一个部门及其所有下级部门和这些部门所挂的人员,整体挪动到另外一个部门,保持子部门、人员相对于这个部门的路径不变。

跨层次部门挪动

URL: /gateway/openimport/open/dept/moveOrg?accessToken=xxxxxx

输入: 参见输入参数,其中data字段格式如下:

{
    "orgId": "", //待挪动部门ID
    "moveToOrgId": "" //挪动到的部门ID
}

输出: 参见输出结果,调用方需要自己保证,目标部门中,不存在同名称的部门(已经存在时,挪动也会成功,但是,会导致其它业务失败)。其中data字段格式如下:

{
    "data": ""
}

1.8. 根据orgId更新组织名称

描述: 更新组织名称,每次更新记录不超过1000条

注意: 当前接口仅仅支持同级组织名称的变化,不包括组织层级变化(原组织和新组织必须在同级目录下)。如果需要将某一部门(包括所有下级部门)整体挪动到另外一个部门,跨层次部门挪动

URL: /gateway/openimport/open/dept/updateById?accessToken=xxxxxx

输入: 参见输入参数,其中data字段格式如下:

{
    "eid":String, //不必须,如果没有,则以外面的eid参数为准
    "departments": [
        {
        "orgId":String, //必填,原组织id
        "todepartment":String //必填,新组织名称,不是长名称
        },...
    ]
}

输出: 参见输出结果,如果更新组织全部成功,则data里返回[],如果有未修改成功的,则未成功的记录会在data中会有具体错误信息,其中data字段格式如下:

[
    {
    "msgId":String, //原组织id
    "msgCode":int, //消息码
    "msg":String //消息
    },…
]

1.9. 根据orgId删除组织

描述: 根据组织id删除组织,如该组织及其子组织下存在“正常”的人员,则删除组织后人员将被统一移动到未分配人类别,请谨慎操作;若不存在“正常”的人员,则该组织及其子组织会被删除,同时把组织下“禁用”或“注销”的人员改为待分配状态

URL: /gateway/openimport/open/dept/deleteById?accessToken=xxxxxx

输入: 参见输入参数,其中data字段格式如下:

{
    "eid":String, //不必须,如果没有,则以外面的eid参数为准
    "departments": [String,…
    ] //必填,要删除的组织id数组
}

输出: 参见输出结果,如果删除组织全部成功,则data里返回[],如果有未删除成功的,则未成功的记录会在data中会有具体错误信息,其中data字段格式如下:

[{
    "msgId":String, //组织id
    "msgCode":int, //消息码
    "msg":String //消息
},…]

1.10. 设置隐藏部门或部门仅可见

描述: 隐藏部门即其他部门人员将无法从通讯录中看到该部门的人员信息;部门仅可见即限制该部门人员不可查看其他部门人员,该部门人员从通讯录仅可看到该部门的人员信息。

URL: /gateway/openimport/open/company/setOrgSecret?accessToken=xxxxxx

输入: 参见输入参数,其中data字段格式如下:

[
    {
    "commitId": String, //唯一标识一次提交
    "orgId": String, //部门ID
    "type": String, //类型,HIDE:隐藏部门;VISI:部门仅可见。
    "status": boolean //状态,true:开启;false:关闭
    }
]

输出: 参见输出结果,其中data字段格式如下:

[
    { //只有在有失败数据时返回
      "commitId": String, //提交ID
      "errorMsg": String //此处标识失败原因
    }
]

1.11. 查询设置隐藏部门或者部门仅可见部门

描述: 批量设置隐藏部门或者部门仅可见部门;

URL: /gateway/openimport/open/company/queryOrgSecret?accessToken=xxxxxx

输入: 参见输入参数,其中data字段格式如下:

{
    "type": String, //查询类型,HIDE:隐藏部门;VISI:部门仅可见
    "begin": int, // 起始
    "count": int // 条数
}

输出: 参见输出结果,其中data字段格式如下:

[
    {
    "orgId": String, // 人员ID
    "department": String // 部门长名称
    }
]

1.12. 更新组织排序码

描述: 更新组织排序,如果更新失败,会返回失败的orgid,更新成功data为空;

URL: /gateway/openimport/open/dept/updateWeightsById?accessToken=xxxxxx

输入: 参见输入参数,其中data字段格式如下:

{
    "departments": [
        {
            "orgId": "078e22a6-c512-4c9a-90c4-acf721e5a7d8", //部门ID
            "weights": "122" //排序码
        },
        {
            "orgId": "20fcf4bc-3fdf-4d07-887f-923e3cda23c2",
            "weights": "13"
        },
        {
            "orgId": "20fcf4bc-3fdf-4d07-887f-923e3cda2c2",
            "weights": "13"
        }
    ],
    "eid": "2704254"
}

输出: 参见输出结果,其中data字段格式如下:

[
    {
        "msgId": "20fcf4bc-3fdf-4d07-887f-923e3cda2c2", //部门ID
        "msgCode": "221",
        "msg": "部门ID不存在"
    }
]

2. FAQ

2.1. API测试工具Postman调用示例

查询全部组织信息: 查询全部组织信息

新增组织: 新增组织

results matching ""

    No results matching ""