请求
| 基本信息 | |
|---|---|
| HTTP URL | https://api.dingtalk.io/topapi/attendance/vacation/type/list |
| HTTP Method | POST |
| 支持的应用类型 | appType-企业内部应用 appType-第三方企业应用 |
| 权限要求 | permission-qyapi_holiday_readonly-钉钉假期读权限 |
查询参数
| 名称 | 类型 | 是否必填 | 示例值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | bE74xxxx | 调用该API的应用凭证。 - 企业内部应用,通过获取企业内部应用的access_token接口获取。 - 第三方企业应用,通过获取第三方企业的access_token接口获取。 |
请求体
| 名称 | 类型 | 是否必填 | 示例值 | 描述 |
|---|---|---|---|---|
| op_userid | String | 是 | user01 | 当前企业内拥有OA审批应用权限的管理员的userId。 |
| vacation_source | String | 否 | all | 假期来源。取值: - “all”:获取的是所有假期类型 - "":获取的是调用添加假期规则接口新建的假期。 |
请求示例
curl -X POST "https://api.dingtalk.io/topapi/attendance/vacation/type/list" \
-H 'Content-Type:application/x-www-form-urlencoded;charset=utf-8' \
-d 'access_token=43aexxxxd897cd9' \
-d 'op_userid=03085665764167' \
-d 'vacation_source=all'
DingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/attendance/vacation/type/list");
OapiAttendanceVacationTypeListRequest req = new OapiAttendanceVacationTypeListRequest();
req.setOpUserid("user01");
req.setVacationSource("all");
OapiAttendanceVacationTypeListResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());
import dingtalk.api
req=dingtalk.api.OapiAttendanceVacationTypeListRequest("https://api.dingtalk.io/topapi/attendance/vacation/type/list")
req.op_userid="03085665764167"
req.vacation_source="all"
try:
resp= req.getResponse(access_token)
print(resp)
except Exception,e:
print(e)
include "TopSdk.php";
date_default_timezone_set('Asia/Shanghai');
$c = new DingTalkClient(DingTalkConstant::$CALL_TYPE_OAPI, DingTalkConstant::$METHOD_POST , DingTalkConstant::$FORMAT_JSON);
$req = new OapiAttendanceVacationTypeListRequest;
$req->setOpUserid("03085665764167");
$req->setVacationSource("all");
$resp = $c->execute($req, $access_token, "https://api.dingtalk.io/topapi/attendance/vacation/type/list");
IDingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/attendance/vacation/type/list");
OapiAttendanceVacationTypeListRequest req = new OapiAttendanceVacationTypeListRequest();
req.OpUserid = "03085665764167";
req.VacationSource = "all";
OapiAttendanceVacationTypeListResponse rsp = client.Execute(req, access_token);
Console.WriteLine(rsp.Body);
响应
响应体
| 名称 | 类型 | 示例值 | 描述 |
|---|---|---|---|
| request_id | String | 3k4z2hq8pv2x | 请求ID。 |
| errcode | Number | 0 | 返回码。 |
| errmsg | String | ok | 返回码描述。 |
| success | Boolean | true | 是否正确访问。 - true:是 - false:不是 |
| result | Result[] | 返回结果。 | |
| leave_code | String | 037477sdfsxxxx | 假期规则唯一标识。 |
| leave_name | String | 年假 | 假期名称。 |
| leave_view_unit | String | day | 请假单位。 - day:天 - halfDay:半天 - hour:小时 |
| leave_certificate | LeaveCertificateVo | 请假证明。 | |
| leave_certificate.unit | String | hour | 请假证明单位。 - hour:小时 - day:天 |
| leave_certificate.duration | Number | 1 | 超过多长时间需提供请假证明。 |
| leave_certificate.enable | Boolean | false | 是否开启请假证明。 - true:开启 - false:未开启 |
| leave_certificate.prompt_information | String | 请假信息 | 请假提示文案。 |
| submit_time_rule | SubmitTimeRuleVo | 限时提交规则。 | |
| submit_time_rule.time_value | Number | 18 | 限制值。 - 当timeUnit为day时,有效值范围是0至30天; - timeUnit为hour时,有效值范围是0至24小时。 |
| submit_time_rule.time_unit | String | hour | 时间单位。 - day:天 - hour:小时 |
| submit_time_rule.time_type | String | before | 限制类型。 - before:提前 - after:补交 |
| submit_time_rule.enable_time_limit | Boolean | false | 是否开启限时提交功能。 - true:开启 - false:不开启 |
| biz_type | String | general_leave | 假期类型。 - general_leave:普通假期 - lieu_leave:加班转调休 |
| natural_day_leave | String | true | 是否按照自然日统计请假时长。 - true:按照自然日统计请假时长 - false:不按照自然日统计请假时长 说明 当为false时,用户发起请假时,会根据用户在请假时间段内的排班情况来计算请假时长。 |
| validity_type | String | absolute_time | 有效类型。 - absolute_time:绝对时间 - relative_time:相对时间 |
| validity_value | String | 12-31 | 延长日期。 - 当validity_type为absolute_time该值不为空且满足“yy-mm”格式。 - 当validity_type为relative_time该值为大于1的整数。 |
| hours_in_per_day | Number | 1000 | 每天折算的工作时长,百分之一。 例如:1天=10小时=1000。 |
| source | String | inner | 假期来源。 - external:开放接口自定义的 - inner:oa后台新建的 |
响应体示例
{
"errcode": 0,
"errmsg":"ok",
"result": [
{
"biz_type": "general_leave",
"hours_in_per_day": 1000,
"leave_code": "037477sdfsxxxx",
"leave_name": "年假",
"leave_view_unit": "day",
"leave_certificate": {
"unit": "hour",
"duration": "1",
"enable": false,
"prompt_information": "请假信息"
},
"submit_time_rule": {
"time_value": 18,
"time_unit": "day",
"time_type": "before",
"enable_time_limit": false
},
"validity_type": "absolute_time",
"natural_day_leave": "true",
"validity_value": "12-31",
"source": "external"
}
],
"success": true,
"request_id": "3k4z2hq8pv2x"
}