dingtalk.oapi.attendance.vacation.type.list (假期类型查询)

查询假期类型

公共参数

请求参数

名称 类型 是否必须 示例值 更多限制 描述
op_userid String 必须 03085665764167 操作员ID
vacation_source String 可选 all 空:开放接口定义假期类型;all:所有假期类型

响应参数

名称 类型 示例值 描述
errcode Number 0 dingOpenErrcode
errmsg String 成功 errorMsg
success Boolean true 是否正确访问
result Result [] result
  • └ leave_code
  • String
  • 037477ae-1009-4632-b8e9-e919ae5e7973
  • 假期类型唯一标识
  • └ leave_name
  • String
  • 1年假
  • 假期名称
  • └ leave_view_unit
  • String
  • day
  • 请假单位,可以按照天半天或者小时请假。(day、halfDay、hour其中一种)
  • └ biz_type
  • String
  • general_leave
  • 假期类型,普通假期或者加班转调休假期。(general_leave、lieu_leave其中一种)
  • └ natural_day_leave
  • String
  • true
  • 是否按照自然日统计请假时长,当为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 oa后台新建的:inner
  • └ paid_leave
  • Boolean
  • false
  • 是否带薪假期
  • visibility_rules
  • LeaveVisibilityRuleVo []
  • 适用范围规则列表:哪些部门/员工可以使用该假期类型
  • └ visible
  • String []
  • user1,user2
  • 规则数据:当type=staff时,为员工userId列表;当type=dept时,为部门id列表;当type=label时,为角色id列表
  • └ type
  • String
  • staff
  • 规则类型:dept-部门;staff-员工;label-角色
  • └ when_can_leave
  • String
  • entry
  • 新员工请假:何时可以请假(entry-入职开始 、formal-转正后)
  • └ freedom_leave
  • Boolean
  • false
  • 不需要余额控制的请假类型(如事假)
  • └ leave_time_ceil_min_unit
  • String
  • hour
  • 请假时长向上取整时的最小时长单位:hour-不足1小时按照1小时计算;halfHour-不足半小时按照半小时计算
  • └ leave_time_ceil
  • Boolean
  • false
  • 是否开启请假时长是否向上取整
  • └ min_leave_hour
  • Number
  • 2
  • 请假时,最小请假时长(请假单位为hour时生效),请假时长小于该值时自动取该值,有效值:[0, 23]
  • leave_certificate
  • LeaveCertificateVo
  • 请假证明类
  • └ unit
  • String
  • hour
  • 请假证明单位hour,day
  • └ duration
  • Number
  • 1
  • 超过多长时间需提供请假证明
  • └ enable
  • Boolean
  • false
  • 是否开启请假证明
  • └ prompt_information
  • String
  • 请假文案
  • 请假提示文案
  • submit_time_rule
  • SubmitTimeRuleVo
  • 限时提交规则
  • └ time_value
  • Number
  • 1
  • 限制值:timeUnit=day时,有效值范围[0~30] 天;timeUnit=hour时,有效值范围[0~24] 小时
  • └ time_unit
  • String
  • day
  • 时间单位:day-天;hour-小时
  • └ time_type
  • String
  • before
  • 限制类型:before-提前;after-补交
  • └ enable_time_limit
  • Boolean
  • true
  • 是否开启限时提交功能:仅且为true时开启
  • └ max_leave_time
  • Number
  • 1
  • 最大请假时间
  • └ leave_hour_ceil
  • String
  • up
  • 取整字段, up或者down

请求示例

  • JAVA
  • .NET
  • PHP
  • CURL
  • Python
  • C/C++
  • NodeJS
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/attendance/vacation/type/list");
OapiAttendanceVacationTypeListRequest req = new OapiAttendanceVacationTypeListRequest();
req.setOpUserid("03085665764167");
req.setVacationSource("all");
OapiAttendanceVacationTypeListResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());

响应示例

  • JSON示例
{
    "errcode":0,
    "errmsg":"成功",
    "success":true,
    "result":[
        {
                "leave_code":"037477ae-1009-4632-b8e9-e919ae5e7973",
                "leave_name":"1年假",
                "leave_view_unit":"day",
                "biz_type":"general_leave",
                "natural_day_leave":"true",
                "validity_type":"absolute_time",
                "validity_value":"12-31",
                "hours_in_per_day":1000,
                "source":"inner",
                "paid_leave":false,
                "visibility_rules":[
                    {
                            "visible":{
                                "string":[
                                    "user1",
                                    "user2"
                                ]
                            },
                            "type":"staff"
                    }
                ],
                "when_can_leave":"entry",
                "freedom_leave":false,
                "leave_time_ceil_min_unit":"hour",
                "leave_time_ceil":false,
                "min_leave_hour":2,
                "leave_certificate":{
                    "unit":"hour",
                    "duration":1,
                    "enable":false,
                    "prompt_information":"请假文案"
                },
                "submit_time_rule":{
                    "time_value":1,
                    "time_unit":"day",
                    "time_type":"before",
                    "enable_time_limit":true
                },
                "max_leave_time":1,
                "leave_hour_ceil":"up"
        }
    ]
}

异常示例

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

错误码解释

错误码 错误描述 解决方案

API工具

如何获得此API

FAQ

返回
顶部