dingtalk.oapi.attendance.group.add (考勤组写入)

考勤组写入接口

公共参数

请求参数

名称 类型 是否必须 示例值 更多限制 描述
op_user_id String 必须 123dfd 操作人id
top_group TopGroupVo 必须 考勤组信息
  • └ owner
  • String
  • 可选
  • 123dfdf
  • 考勤组owner
  • └ enable_emp_select_class
  • Boolean
  • 可选
  • true
  • 未排班时允许员工选择班次打卡
  • └ corp_id
  • String
  • 可选
  • dingdfe
  • corpId
  • └ skip_holidays
  • Boolean
  • 可选
  • true
  • 是否跳过节假日
  • └ special_days
  • String
  • 可选
  • {"onDuty":{1400000:123,1400001:123},"offDuty":[1400000,1400001]}
  • 特殊日期配置
  • └ enable_outside_camera_check
  • Boolean
  • 可选
  • true
  • 是否开启外勤打卡必须拍照
  • positions
  • TopPositionVo []
  • 可选
  • 考勤地址
  • └ address
  • String
  • 可选
  • 生物科技产业园区经二路21号
  • 地址
  • └ corp_id
  • String
  • 可选
  • 123dfd
  • corpId
  • └ latitude
  • String
  • 可选
  • 36.687495
  • 纬度
  • └ accuracy
  • String
  • 可选
  • 0
  • 精度
  • └ title
  • String
  • 可选
  • 青藏高原自然博物馆
  • 标题
  • └ longitude
  • String
  • 可选
  • 101.750329
  • 经度
  • └ modify_member
  • Boolean
  • 可选
  • true
  • 是否有修改考勤组成员相关信息
  • └ type
  • String
  • 必须
  • TURN
  • 考勤组类型
  • └ enable_face_check
  • Boolean
  • 可选
  • true
  • 是否开启人脸检测
  • └ check_need_healthy_code
  • Boolean
  • 可选
  • true
  • 打卡是否需要健康码
  • └ enable_camera_check
  • Boolean
  • 可选
  • true
  • 是否开启拍照打卡
  • shift_vo_list
  • TopShiftVo []
  • 可选
  • 班次信息
  • └ id
  • Number
  • 可选
  • 123
  • 班次id
  • └ enable_outside_check
  • Boolean
  • 可选
  • true
  • 是否可以外勤打卡
  • members
  • TopMemberVo []
  • 必须
  • 考勤组成员
  • └ role
  • String
  • 必须
  • Attendance
  • 角色
  • └ corp_id
  • String
  • 可选
  • 123dfd
  • corpId
  • └ type
  • String
  • 必须
  • StaffMember
  • 类型
  • └ user_id
  • String
  • 必须
  • 1212jfkd
  • 用户id
  • └ name
  • String
  • 必须
  • 白班考勤
  • 考勤组名
  • └ id
  • Number
  • 可选
  • 123
  • 考勤组id
  • └ enable_next_day
  • Boolean
  • 可选
  • false
  • 是否第二天生效
  • └ manager_list
  • String []
  • 可选
  • ["userId1","userId2"]
  • 考勤组子管理员userid列表
  • └ workday_class_list
  • Number []
  • 可选
  • [12,12,12,12,12,0,0]
  • 周班次列表(固定班制必填,0表示休息)
  • └ default_class_id
  • Number
  • 可选
  • 1234
  • 默认班次id(固定班制必填)
  • └ offset
  • Number
  • 可选
  • 500
  • 考勤范围
  • resource_permission_map
  • TopGroupManageRolePermissionVo
  • 可选
  • 子管理员权限范围(w表示可管理,r表示可读)
  • └ schedule
  • String
  • 可选
  • w
  • 员工排班
  • └ group_member
  • String
  • 可选
  • w
  • 设置参与考勤人员
  • └ group_type
  • String
  • 可选
  • r
  • 设置考勤类型
  • └ check_time
  • String
  • 可选
  • w
  • 设置考勤时间
  • └ check_position_type
  • String
  • 可选
  • r
  • 设置打卡方式
  • └ over_time_rule
  • String
  • 可选
  • r
  • 设置加班规则
  • └ camera_check
  • String
  • 可选
  • w
  • 设置拍照打卡规则
  • └ out_side_check
  • String
  • 可选
  • w
  • 设置外勤打卡
  • wifis
  • TopWifiVo []
  • 可选
  • 考勤wifi打卡
  • └ mac_addr
  • String
  • 可选
  • C0:E0:D0:E0:C0:0F
  • mac地址
  • └ ssid
  • String
  • 可选
  • OFFICE-WiFi
  • wifi的ssid
  • └ corp_id
  • String
  • 可选
  • 123dfd
  • 企业corpid
  • └ disable_check_without_schedule
  • Boolean
  • 可选
  • false
  • 未排班时是否禁止员工打卡
  • └ freecheck_work_days
  • Number []
  • 可选
  • [1,2,3,4,5,6,0]
  • 自由工时考勤组工作日(1表示周一,0表示周日)
  • └ freecheck_day_start_min_offset
  • Number
  • 可选
  • 240
  • 自由工时考勤组考勤开始时间与当天0点偏移分钟数(如:240表示4:00)
  • └ disable_check_when_rest
  • Boolean
  • 可选
  • false
  • 休息日打卡是否需审批。true:需要 false:不需要
  • └ enable_position_ble
  • Boolean
  • 可选
  • false
  • 是否启用蓝牙定位
  • ble_device_list
  • TopAtBleDeviceVO []
  • 可选
  • 蓝牙打卡信息
  • └ device_id
  • Number
  • 可选
  • 1311089987
  • 设备id

响应参数

名称 类型 示例值 描述
result TopGroupVo 考勤组结果
  • └ name
  • String
  • 白班考勤
  • 考勤组名
  • └ id
  • Number
  • 23
  • 考勤组id
success Boolean true 是否成功
errcode Number 0 错误码
errmsg String demo 错误信息

请求示例

  • JAVA
  • .NET
  • PHP
  • CURL
  • Python
  • C/C++
  • NodeJS
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/attendance/group/add");
OapiAttendanceGroupAddRequest req = new OapiAttendanceGroupAddRequest();
req.setOpUserId("123dfd");
TopGroupVo obj1 = new TopGroupVo();
obj1.setOwner("123dfdf");
obj1.setEnableEmpSelectClass(true);
obj1.setCorpId("dingdfe");
obj1.setSkipHolidays(true);
obj1.setSpecialDays("{\"onDuty\":{1400000:123,1400001:123},\"offDuty\":[1400000,1400001]}");
obj1.setEnableOutsideCameraCheck(true);
List<TopPositionVo> list3 = new ArrayList<TopPositionVo>();
TopPositionVo obj4 = new TopPositionVo();
list3.add(obj4);
obj4.setAddress("生物科技产业园区经二路21号");
obj4.setCorpId("123dfd");
obj4.setLatitude("36.687495");
obj4.setAccuracy("0");
obj4.setTitle("青藏高原自然博物馆");
obj4.setLongitude("101.750329");
obj1.setPositions(list3);
obj1.setModifyMember(true);
obj1.setType("TURN");
obj1.setEnableFaceCheck(true);
obj1.setCheckNeedHealthyCode(true);
obj1.setEnableCameraCheck(true);
List<TopShiftVo> list6 = new ArrayList<TopShiftVo>();
TopShiftVo obj7 = new TopShiftVo();
list6.add(obj7);
obj7.setId(123L);
obj1.setShiftVoList(list6);
obj1.setEnableOutsideCheck(true);
List<TopMemberVo> list9 = new ArrayList<TopMemberVo>();
TopMemberVo obj10 = new TopMemberVo();
list9.add(obj10);
obj10.setRole("Attendance");
obj10.setCorpId("123dfd");
obj10.setType("StaffMember");
obj10.setUserId("1212jfkd");
obj1.setMembers(list9);
obj1.setName("白班考勤");
obj1.setId(123L);
obj1.setEnableNextDay(false);
obj1.setManagerList(""userId1","userId2"");
obj1.setWorkdayClassList(new Long[] { 12,12,12,12,12,0,0 };
);
obj1.setDefaultClassId(1234L);
obj1.setOffset(500L);
TopGroupManageRolePermissionVo obj11 = new TopGroupManageRolePermissionVo();
obj11.setSchedule("w");
obj11.setGroupMember("w");
obj11.setGroupType("r");
obj11.setCheckTime("w");
obj11.setCheckPositionType("r");
obj11.setOverTimeRule("r");
obj11.setCameraCheck("w");
obj11.setOutSideCheck("w");
obj1.setResourcePermissionMap(obj11);
List<TopWifiVo> list13 = new ArrayList<TopWifiVo>();
TopWifiVo obj14 = new TopWifiVo();
list13.add(obj14);
obj14.setMacAddr("C0:E0:D0:E0:C0:0F");
obj14.setSsid("OFFICE-WiFi");
obj14.setCorpId("123dfd");
obj1.setWifis(list13);
obj1.setDisableCheckWithoutSchedule(false);
obj1.setFreecheckWorkDays(new Long[] { 1,2,3,4,5,6,0 };
);
obj1.setFreecheckDayStartMinOffset(240L);
obj1.setDisableCheckWhenRest(false);
obj1.setEnablePositionBle(false);
List<TopAtBleDeviceVO> list16 = new ArrayList<TopAtBleDeviceVO>();
TopAtBleDeviceVO obj17 = new TopAtBleDeviceVO();
list16.add(obj17);
obj17.setDeviceId(1311089987L);
obj1.setBleDeviceList(list16);
req.setTopGroup(obj1);
OapiAttendanceGroupAddResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());

响应示例

  • JSON示例
{
    "result":{
        "name":"白班考勤",
        "id":23
    },
    "success":true,
    "errcode":0,
    "errmsg":"demo"
}

异常示例

  • JSON示例
{
	"errcode":88,
	"errmsg":"ding talk error"
}

错误码解释

错误码 错误描述 解决方案

API工具

如何获得此API

FAQ

返回
顶部