自建应用、代开发应用可用此接口,获取企业内所有打卡规则。
请求方式:POST(HTTPS)
请求地址:https://qyapi.weixin.qq.com/cgi-bin/checkin/getcorpcheckinoption?access_token=ACCESS_TOKEN
请求示例:
{}
参数说明:
参数 | 必须 | 说明 |
---|---|---|
access_token | 是 | 调用接口凭证,获取方式参考:文档-获取access_token |
调用频率:
接口调用频率限制为60次/分钟。
权限说明:
调用的应用需要满足如下的权限:
应用类型 | 权限要求 |
---|---|
自建应用 | 配置到「打卡 - 可调用接口的应用」中 |
代开发应用 | 具有「打卡」权限 |
第三方应用 | 暂不支持 |
注: 从2023年12月1日0点起,不再支持通过系统应用secret调用接口,存量企业暂不受影响 查看详情
返回结果 :
{
"errcode": 0,
"errmsg": "ok",
"group": [{
"grouptype": 1,
"groupid": 69,
"open_sp_checkin":true,
"checkindate": [{
"workdays": [
1,
2,
3,
4,
5
],
"checkintime": [{
"work_sec": 36000,
"off_work_sec": 43200,
"remind_work_sec": 35400,
"remind_off_work_sec": 43200
},
{
"work_sec": 50400,
"off_work_sec": 72000,
"remind_work_sec": 49800,
"remind_off_work_sec": 72000
}
],
"noneed_offwork": true,
"limit_aheadtime": 10800000,
"flex_on_duty_time": 0,
"flex_off_duty_time": 0
}],
"spe_workdays": [{
"timestamp": 1512144000,
"notes": "必须打卡的日期",
"checkintime": [{
"work_sec": 32400,
"off_work_sec": 61200,
"remind_work_sec": 31800,
"remind_off_work_sec": 61200
}]
}],
"spe_offdays": [{
"timestamp": 1512057600,
"notes": "不需要打卡的日期",
"checkintime": []
}],
"sync_holidays": true,
"groupname": "打卡规则1",
"need_photo": true,
"wifimac_infos": [{
"wifiname": "Tencent-WiFi-1",
"wifimac": "c0:7b:bc:37:f8:d3"
},
{
"wifiname": "Tencent-WiFi-2",
"wifimac": "70:10:5c:7d:f6:d5"
}
],
"note_can_use_local_pic": false,
"allow_checkin_offworkday": true,
"allow_apply_offworkday": true,
"loc_infos": [{
"lat": 30547030,
"lng": 104062890,
"loc_title": "腾讯成都大厦",
"loc_detail": "四川省成都市武侯区高新南区天府三街",
"distance": 300
},
{
"lat": 23097490,
"lng": 113323750,
"loc_title": "T.I.T创意园",
"loc_detail": "广东省广州市海珠区新港中路397号",
"distance": 300
}
],
"range": {
"party_id": [],
"userid": ["icef", "LiJingZhong"],
"tagid": [2]
},
"create_time": 1606204343,
"white_users": ["canno"],
"type": 0,
"reporterinfo": {
"reporters": [{
"userid": "brant"
}],
"updatetime": 1606305508
},
"ot_info": {
"type": 2,
"allow_ot_workingday": true,
"allow_ot_nonworkingday": false,
"otcheckinfo": {
"ot_workingday_time_start": 1800,
"ot_workingday_time_min": 1800,
"ot_workingday_time_max": 14400,
"ot_nonworkingday_time_min": 1800,
"ot_nonworkingday_time_max": 14400,
"ot_workingday_restinfo": {
"type": 2,
"fix_time_rule": {
"fix_time_begin_sec": 43200,
"fix_time_end_sec": 46800
},
"cal_ottime_rule": {
"items": [{
"ot_time": 18000,
"rest_time": 3600
}]
}
},
"ot_nonworkingday_restinfo": {
"type": 2,
"fix_time_rule": {
"fix_time_begin_sec": 43200,
"fix_time_end_sec": 46800
},
"cal_ottime_rule": {
"items": [{
"ot_time": 18000,
"rest_time": 3600
}]
}
},
"ot_nonworkingday_spanday_time": 0
},
"uptime": 1606275664,
"otapplyinfo": {
"allow_ot_workingday": true,
"allow_ot_nonworkingday": true,
"uptime": 1606275664,
"ot_workingday_restinfo": {
"type": 2,
"fix_time_rule": {
"fix_time_begin_sec": 43200,
"fix_time_end_sec": 46800
},
"cal_ottime_rule": {
"items": [{
"ot_time": 18000,
"rest_time": 3600
}]
}
},
"ot_nonworkingday_restinfo": {
"type": 2,
"fix_time_rule": {
"fix_time_begin_sec": 43200,
"fix_time_end_sec": 46800
},
"cal_ottime_rule": {
"items": [{
"ot_time": 18000,
"rest_time": 3600
}]
}
},
"ot_nonworkingday_spanday_time": 0
}
},
"allow_apply_bk_cnt": -1,
"option_out_range": 0,
"create_userid": "gaogao",
"use_face_detect": false,
"allow_apply_bk_day_limit": -1,
"update_userid": "sandy",
"schedulelist": [{
"schedule_id": 221,
"schedule_name": "2",
"time_section": [{
"time_id": 1,
"work_sec": 32400,
"off_work_sec": 61200,
"remind_work_sec": 31800,
"remind_off_work_sec": 61200,
"rest_begin_time": 43200,
"rest_end_time": 46800,
"allow_rest": false
}],
"limit_aheadtime": 14400000,
"noneed_offwork": false,
"limit_offtime": 14400,
"flex_on_duty_time": 0,
"flex_off_duty_time": 0,
"allow_flex": false,
"late_rule": {
"allow_offwork_after_time": false,
"timerules": [{
"offwork_after_time": 3600,
"onwork_flex_time": 3600
}]
},
"max_allow_arrive_early": 0,
"max_allow_arrive_late": 0
}],
"offwork_interval_time": 300
}]
}
参数说明:
参数 | 类型 | 说明 |
---|---|---|
errcode | int32 | 错误码,详情见错误码说明 |
errmsg | string | 错误码对应的错误信息提示 |
group | obj[] | 企业规则信息列表 |
group.grouptype | uint32 | 打卡规则类型,1:固定时间上下班;2:按班次上下班;3:自由上下班 |
group.groupid | uint32 | 打卡规则id |
group.groupname | string | 打卡规则名称 |
group.checkindate | obj[] | 打卡时间,当规则类型为排班时没有意义 |
group.checkindate.workdays | uint32[] | 工作日。若为固定时间上下班或自由上下班,则1到6分别表示星期一到星期六,0表示星期日 |
group.checkindate.checkintime | uint32 | 工作日上下班打卡时间信息 |
group.checkindate.checkintime.work_sec | uint32 | 上班时间,表示为距离当天0点的秒数。 |
group.checkindate.checkintime.off_work_sec | uint32 | 下班时间,表示为距离当天0点的秒数。 |
group.checkindate.checkintime.remind_work_sec | uint32 | 上班提醒时间,表示为距离当天0点的秒数。 |
group.checkindate.checkintime.remind_off_work_sec | uint32 | 下班提醒时间,表示为距离当天0点的秒数。 |
group.checkindate.noneed_offwork | bool | 下班不需要打卡,true为下班不需要打卡,false为下班需要打卡 |
group.checkindate.limit_aheadtime | uint32 | 打卡时间限制(毫秒) |
group.checkindate.flex_on_duty_time | int32 | 允许迟到时间(秒) |
group.checkindate.flex_off_duty_time | int32 | 允许早退时间(秒) |
group.spe_workdays | obj[] | 特殊日期-必须打卡日期信息,timestamp表示具体时间 |
group.spe_workdays.timestamp | uint32 | 特殊日期-必须打卡日期时间戳 |
group.spe_workdays.notes | string | 特殊日期备注 |
group.spe_workdays.checkintime | obj[] | 特殊日期-必须打卡日期-上下班打卡时间,内部参数同group.checkindate.checkintime |
group.spe_offdays | obj[] | 特殊日期-不用打卡日期信息, timestamp表示具体时间 |
group.spe_offdays.timestamp | uint32 | 特殊日期-不用打卡日期时间戳 |
group.spe_offdays.notes | string | 特殊日期备注 |
group.sync_holidays | bool | 是否同步法定节假日,true为同步,false为不同步,当前排班不支持 |
group.need_photo | bool | 是否打卡必须拍照,true为必须拍照,false为不必须拍照 |
group.note_can_use_local_pic | bool | 是否备注时允许上传本地图片,true为允许,false为不允许 |
group.allow_checkin_offworkday | bool | 是否非工作日允许打卡,true为允许,false为不允许 |
group.allow_apply_offworkday | bool | 是否允许提交补卡申请,true为允许,false为不允许 |
group.wifimac_infos | obj[] | 打卡地点-WiFi打卡信息 |
group.wifimac_infos.wifiname | string | WiFi打卡地点名称 |
group.wifimac_infos.wifimac | string | WiFi打卡地点MAC地址/bssid |
group.loc_infos | obj[] | 打卡地点-位置打卡信息 |
group.loc_infos.lat | int64 | 位置打卡地点纬度,是实际纬度的1000000倍,与腾讯地图一致采用GCJ-02坐标系统标准 |
group.loc_infos.lng | int64 | 位置打卡地点经度,是实际经度的1000000倍,与腾讯地图一致采用GCJ-02坐标系统标准 |
group.loc_infos.loc_title | string | 位置打卡地点名称 |
group.loc_infos.loc_detail | string | 位置打卡地点详情 |
group.loc_infos.distance | uint32 | 允许打卡范围(米) |
group.range | obj | 打卡人员信息 |
group.range.userid | string | 打卡人员中,单个打卡人员节点的userid |
group.range.party_id | string[] | 打卡人员中,部门节点的id |
group.range.tagid | uint32[] | 打卡人员中,标签节点的标签id |
group.create_time | uint32 | 创建打卡规则时间,为unix时间戳 |
group.white_users | string[] | 打卡人员白名单,即不需要打卡人员,需要有设置白名单才能查看 |
group.type | uint32 | 打卡方式,0:手机;2:智慧考勤机;3:手机+智慧考勤机 |
group.reporterinfo | obj | 汇报对象信息 |
group.reporterinfo.reporters | obj[] | 汇报对象,每个汇报人用userid表示 |
group.reporterinfo.updatetime | uint32 | 汇报对象更新时间 |
group.ot_info | obj | 加班信息,相关信息需要设置后才能显示 |
group.ot_info.type | int32 | 加班类型 0:以加班申请核算打卡记录(根据打卡记录和加班申请核算),1:以打卡时间为准(根据打卡时间计算),2: 以加班申请审批为准(只根据加班申请计算) |
group.ot_info.allow_ot_workingday | bool | 允许工作日加班,true为允许,false为不允许 |
group.ot_info.allow_ot_nonworkingday | bool | 允许非工作日加班,true为允许,flase为不允许 |
group.ot_info.otcheckinfo | obj | 以打卡时间为准-加班时长计算规则信息 |
group.ot_info.otcheckinfo.ot_workingday_time_start | uint32 | 允许工作日加班-加班开始时间:下班后xx秒开始计算加班,距离最晚下班时间的秒数,例如,1800(30分钟 乘以 60秒),默认值30分钟 |
group.ot_info.otcheckinfo.ot_workingday_time_min | uint32 | 允许工作日加班-最短加班时长:不足xx秒视为未加班,单位秒,默认值30分钟 |
group.ot_info.otcheckinfo.ot_workingday_time_max | uint32 | 允许工作日加班-最长加班时长:超过则视为加班xx秒,单位秒,默认值240分钟 |
group.ot_info.otcheckinfo.ot_nonworkingday_time_min | uint32 | 允许非工作日加班-最短加班时长:不足xx秒视为未加班,单位秒,默认值30分钟 |
group.ot_info.otcheckinfo.ot_nonworkingday_time_max | uint32 | 允许非工作日加班-最长加班时长:超过则视为加班xx秒 单位秒,默认值240分钟 |
group.ot_info.otcheckinfo.ot_nonworkingday_spanday_time | uint32 | 非工作日加班,跨天时间,距离当天00:00的秒数 |
group.ot_info.otcheckinfo.ot_workingday_restinfo | obj | 工作日加班-休息扣除配置信息 |
uptime | uint32 | 更新时间 | |
group.ot_info.otcheckinfo.ot_workingday_restinfo.type | uint32 | 工作日加班-休息扣除类型:0-不开启扣除;1-指定休息时间扣除;2-按加班时长扣除休息时间 |
group.ot_info.otcheckinfo.ot_workingday_restinfo.fix_time_rule | obj | 工作日加班-指定休息时间配置信息,当group.ot_info.otcheckinfo.ot_workingday_restinfo.type为1时有意义 |
group.ot_info.otcheckinfo.ot_workingday_restinfo.fix_time_rule.fix_time_begin_sec | uint32 | 工作日加班-指定休息时间的开始时间, 距离当天00:00的秒数 |
group.ot_info.otcheckinfo.ot_workingday_restinfo.fix_time_rule.fix_time_end_sec | uint32 | 工作日加班-指定休息时间的结束时间, 距离当天00:00的秒数 |
group.ot_info.otcheckinfo.ot_workingday_restinfo.cal_ottime_rule | obj | 工作日加班-按加班时长扣除配置信息,当group.ot_info.otcheckinfo.ot_workingday_restinfo.type为2时有意义 |
group.ot_info.otcheckinfo.ot_workingday_restinfo.cal_ottime_rule.items | obj | 工作日加班-按加班时长扣除条件信息 |
group.ot_info.otcheckinfo.ot_workingday_restinfo.cal_ottime_rule.items.ot_time | uint32 | 加班满-时长(秒) |
group.ot_info.otcheckinfo.ot_workingday_restinfo.cal_ottime_rule.items.rest_time | uint32 | 对应扣除-时长(秒) |
group.ot_info.otcheckinfo.ot_nonworkingday_restinfo | obj | 非工作日加班-休息扣除配置信息,参数信息与group.ot_info.otcheckinfo.ot_workingday_restinfo一致 |
otapplyinfo | obj | 以加班申请核算打卡记录相关信息,根据加班申请核算加班时长,只有有设置相关信息时且以以加班申请核算打卡才有相关信息;内含参数释义基本同group.ot_info.otcheckinfo,但只包含加班休息扣除、跨天时间等参数 |
group.allow_apply_bk_cnt | int32 | 每月最多补卡次数,默认-1表示不限制 |
group.option_out_range | uint32 | 范围外打卡处理方式,0-视为范围外异常,默认值;1-视为正常外勤;2:不允许范围外打卡 |
group.create_userid | string | 规则创建人userid |
group.use_face_detect | bool | 人脸识别打卡开关,true为启用,false为不启用 |
group.allow_apply_bk_day_limit | int32 | 允许补卡时限,默认-1表示不限制。单位天 |
group.update_userid | string | 规则最近编辑人userid |
group.schedulelist | obj[] | 排班信息,只有规则为按班次上下班打卡时才有该配置 |
group.schedulelist.schedule_id | uint32 | 班次id |
group.schedulelist.schedule_name | string | 班次名称 |
group.schedulelist.time_section | obj[] | 班次上下班时段信息 |
group.schedulelist.time_section.time_id | uint32 | 时段id,为班次中某一堆上下班时间组合的id |
group.schedulelist.time_section.work_sec | uint32 | 上班时间,表示为距离当天0点的秒数。 |
group.schedulelist.time_section.off_work_sec | uint32 | 下班时间,表示为距离当天0点的秒数。 |
group.schedulelist.time_section.remind_work_sec | uint32 | 上班提醒时间,表示为距离当天0点的秒数。 |
group.schedulelist.time_section.remind_off_work_sec | uint32 | 下班提醒时间,表示为距离当天0点的秒数。 |
group.schedulelist.time_section.rest_begin_time | uint32 | 休息开始时间,仅单时段支持,距离0点的秒 |
group.schedulelist.time_section.rest_end_time | uint32 | 休息结束时间,仅单时段支持,距离0点的秒 |
group.schedulelist.time_section.allow_rest | bool | 是否允许休息 |
group.schedulelist.limit_aheadtime | uint32 | 允许提前打卡时间 |
group.schedulelist.limit_offtime | uint32 | 下班xx秒后不允许打下班卡 |
group.schedulelist.noneed_offwork | bool | 下班不需要打卡 |
group.schedulelist.allow_flex | bool | 是否允许弹性时间 |
group.schedulelist.flex_on_duty_time | uint32 | 允许迟到时间(秒) |
group.schedulelist.flex_off_duty_time | uint32 | 允许早退时间(秒) |
group.schedulelist.late_rule | obj | 晚走晚到时间规则信息 |
group.schedulelist.late_rule.allow_offwork_after_time | bool | 是否允许超时下班(下班晚走次日晚到)允许时onwork_flex_time,offwork_after_time才有意义 |
group.schedulelist.late_rule.timerules | obj[] | 迟到规则时间 |
group.schedulelist.late_rule.timerules.offwork_after_time | uint32 | 晚走的时间 距离最晚一个下班的时间单位:秒 |
group.schedulelist.late_rule.timerules.onwork_flex_time | uint32 | 第二天第一个班次允许迟到的弹性时间单位:秒 |
group.schedulelist.max_allow_arrive_early | uint32 | 最早可打卡时间限制 |
group.schedulelist.max_allow_arrive_late | uint32 | 最晚可打卡时间限制,max_allow_arrive_early、max_allow_arrive_early与flex_on_duty_time、flex_off_duty_time互斥,当设置其中一组时,另一组数值置0 |
group.offwork_interval_time | uint32 | 自由签到,上班打卡后xx秒可打下班卡 |
group.buka_restriction | uint64 | 补卡指定异常类型,按比特位设置,大端模式,某位bit置位为1表示关闭某类型。从低到高四个比特位分别表示缺卡类型、迟到类型、早退类型、其他异常类型。为默认值0表示所有异常类型均允许补卡。 |
group.span_day_time | uint32 | 自由上下班规则的跨天时间,表示为距离0点的秒数。 |
group.standard_work_duration | int32 | 自由上下班规则的工作时长(秒),-1表示不限制。 |
group.open_sp_checkin | bool | 是否开启审批打卡,若未返回则默认开启 |