Department

Department List

***/api/v1/department/list?token=***&id=1

Request Parameters

nametyperequireddescription
idnumbernodepartment id

Sample Response data:

{
  "errcode": 0,
  "errmsg": "ok",
  "departments": [
    {
      "id": 1,
      "name": "句子科技",
      "parentid": 0,
      "order": 0
    },
    {
      "id": 2,
      "name": "研发一部",
      "parentid": 1,
      "order": 99998000
    },
    {
      "id": 3,
      "name": "设计",
      "parentid": 1,
      "order": 99999000
    }
  ]
}

Description:

nametyperequireddescription
errcodenumberyesreturn code
errmsgstringyeserror message
departmentsarrayyesdepartment list
idnumberyesdepartment id
namestringyesdepartment name
parentidnumberyesparent department id, root department will be 1
ordernumberyesorder within parent department, larger number is before smaller number

Department User List

GET ***/api/v1/department/simpleUser?token=***&departmentId=**

Description

nametyperequireddescription
departmentIdnumberyesdepartment id

Sample Response data:

{
  "errcode": 0,
  "errmsg": "ok",
  "user_list": [
    {
      "userid": "JuXiaoMi",
      "name": "桔小秘",
      "department": [
        18
      ]
    },
    {
      "userid": "JuXiaoMi22",
      "name": "桔小秘22",
      "department": [
        18
      ]
    },
    {
      "userid": "AoSiLu",
      "name": "奥斯陆",
      "department": [
        18
      ]
    }
  ]
}

Description

nametyperequireddescription
errcodenumberyesreturn code
errmsgstringyeserror message
user_listarrayyesdepartment user list
user_list.useridstringyescorp user id
user_list.namestringyescorp user name
user_list.departmentarrayyesdepartments that the corp user belong to

Create Department

POST ***/api/v1/department/create?token=***

Sample Request Data:

{
  "id": 21
  "name":"更新部门",
  "name_en": "update department",
  "parentid": 1
}

Description:

nametyperequireddescription
idnumbernodepartment id, if this is empty, the department id will be generated automatically
namestringnodepartment name, can not be duplicate within same parent department
name_enstringnoenglish name for the department
parentidnumbernoparent department id of the current department

Sample Response data:

{
  errcode: 0,
  errmsg: "created"
  id: 21
}

Description:

nametyperequireddescription
errcodenumberyesreturn code
errmsgstringyeserror message
idnumberyesdepartment id

Error Code

codedescription
60008department already exist
-1failed to create the department

Update Department

POST ***/api/v1/department/update?token=***

Sample Request Data:

{
  "id": 21
  "name":"更新部门",
  "name_en": "update department",
  "parentid": 1
}

Description:

nametyperequireddescription
idnumberyesdepartment id
namestringnodepartment name
name_enstringnodepartment english name
parentidnumbernoparent department id

Sample Response data:

{
  errcode: 0,
  errmsg: "updated"
}

Description:

nametyperequireddescription
errcodenumberyesreturn code
errmsgstringyeserror message

WARNING

To update parentid, move department, you need to grant internal app 【句子助手】 with permission to the parent department.

Error Code

codedescription
-2failed to update the department

Delete Department

POST ***/api/v1/department/delete?token=***

Sample Request Data:

{
  "id": 38
}

Description:

nametyperequireddescription
idnumberyesdepartment id

Sample Response data:

{
  errcode: 0,
  errmsg: "deleted"
}

Description:

nametyperequireddescription
errcodenumberyesreturn code
errmsgstringyeserror message

WARNING

  1. Can not delete root department
  2. Can not delete department with child department or corp users

Batch Update Department Users

POST ***/api/v1/department/updateDeptUsers?token=***

Sample Request Data:

{
  "user_list":[
    {
      "userid":"juzikeji",
      "department":[12,41]
    },
    {
      "userid":"juzikeji123",
      "department":[21,39]
    }
	]
}

Description

nametyperequireddescription
user_listarrayyescorp user list to be updated
user_list.useridstringyescorp user id
user_list.departmentarrayyesdepartment id list

Sample Response data:

{
  errcode: 0,
  errmsg: "created"
  fail_list: [
    {
      "userid":"juzikeji123",
      "department":[21,39],
      "errcode": 60006,
      "errmsg": "error message"
    }
  ]
}

Description:

nametyperequireddescription
errcodenumberyesreturn code
errmsgstringyeserror message
fail_listarrayyesupdate failed list
fail_list.useridstringyescorp user id
fail_list.departmentarrayyesdepartment id list
fail_list.errcodenumberyeserror code from WeCom
fail_list.errmsgstringyeserror message from WeCom

Batch Create/Update Department

POST ***/api/v1/department/batchCreate?token=***

Sample Request Data:

{
  "departments":[
    {
      "id": 21,
      "name": "测试部门批量测试",
      "parentid":13,
      "order": 111
    },
    {
      "id":13,
      "name":"测试父部门124",
      "parentid":1
    }
  ]
}

Description

nametyperequireddescription
departmentsarrayyesdepartments to be updated
departments.idnumberyesdepartment id
departments.parentidnumberyesparent department id
departments.namestringyesdepartment name
departments.ordernumbernodepartment order, empty or 0 will leave the order unchanged

Sample Response data:

{
  errcode: 0,
  errmsg: "ok"
  jobId: "1_1601381613_212170"
}

Description

nametyperequireddescription
errcodenumberyesreturn code
errmsgstringyeserror message
jobIdstringyesasync update department job id

WARNING

  1. If a department is in the update list exists, will do update on the department
  2. If a department is in the update list does not exist, will do insert
  3. If a department is not in the update list, but in WeCom, and there is no child department or users in the department, will do delete

Error Code

codedescription
-3the job existed

Get Batch Department Update Result

POST ***/api/v1/department/getBatchResult?token=***&jobId=***

Sample Request Data:

***/api/v1/department/getBatchResult?token=***&jobId=1_1601381613_212170

Description

nametyperequireddescription
jobIdstringyesthe jobId returned from the batch update department

Sample Response data:

{
  "errcode": 0,
  "errmsg": "ok",
  "type": "replace_party",
  "result": [
    {
      "action": 2,
      "errcode": 0,
      "errmsg": "ok",
      "partyid": 21
    }
  ],
  "total": 2,
  "percentage": 100,
  "status": 3
}

Description

nametyperequireddescription
errcodenumberyesreturn code
errmsgstringyeserror message
idnumberyesdepartment id
Latest update:
Contributors: windmemory