リクエスト
| ベーシック情報 | |
|---|---|
| HTTP URL | https://api.dingtalk.io/topapi/attendance/schedule/listbyday |
| HTTP メソッド | POST |
| 対応アプリタイプ | appType-社内アプリ appType-サードパーティ社内アプリ |
| 権限 | qyapi_attendance_group_read(勤怠グループの読み取り権限) |
クエリパラメータ
| 名前 | タイプ | 必須 | 例 | 説明 |
|---|---|---|---|---|
| access_token | String | はい | bE74xxxx | この API を呼び出すためのアプリ認証情報です。 - 社内アプリ:社内アプリの access_token を取得するを呼び出して取得します。 - サードパーティ社内アプリ:サードパーティ社内アプリの access_token を取得する API を呼び出して取得します。 |
リクエストボディ
| 名前 | タイプ | 必須 | 例 | 説明 |
|---|---|---|---|---|
| op_user_id | String | はい | manager123 | 操作者の userId です。 |
| user_id | String | はい | dd_dd | 照会対象ユーザーの userId です。 |
| date_time | Number | はい | 1564145519000 | 照会する日付です。ミリ秒単位の Unix タイムスタンプで指定します。 |
リクエスト例
curl -X POST "https://api.dingtalk.io/topapi/attendance/schedule/listbyday" \
-H 'Content-Type:application/x-www-form-urlencoded;charset=utf-8' \
-d 'access_token=5d7f91f3-e22c-41ca-aee3-aa008603e00b' \
-d 'date_time=1564145519000' \
-d 'op_user_id=dd_dd' \
-d 'user_id=dd_dd'
DingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/attendance/schedule/listbyday");
OapiAttendanceScheduleListbydayRequest req = new OapiAttendanceScheduleListbydayRequest();
req.setOpUserId("user123");
req.setUserId("user456");
req.setDateTime(1564145519000L);
OapiAttendanceScheduleListbydayResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());
import dingtalk.api
req=dingtalk.api.OapiAttendanceScheduleListbydayRequest("https://api.dingtalk.io/topapi/attendance/schedule/listbyday")
req.op_user_id="dd_dd"
req.user_id="dd_dd"
req.date_time=1564145519000
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 OapiAttendanceScheduleListbydayRequest;
$req->setOpUserId("dd_dd");
$req->setUserId("dd_dd");
$req->setDateTime("1564145519000");
$resp = $c->execute($req, $access_token, "https://api.dingtalk.io/topapi/attendance/schedule/listbyday");
IDingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/attendance/schedule/listbyday");
OapiAttendanceScheduleListbydayRequest req = new OapiAttendanceScheduleListbydayRequest();
req.OpUserId = "dd_dd";
req.UserId = "dd_dd";
req.DateTime = 1564145519000L;
OapiAttendanceScheduleListbydayResponse rsp = client.Execute(req, access_token);
Console.WriteLine(rsp.Body);
レスポンス
レスポンスボディ
| 名前 | タイプ | 例 | 説明 |
|---|---|---|---|
| result | TopScheduleVo[] | 照会結果です。 | |
| check_type | String | OnDuty | 勤怠タイプです。 - Onduty:出勤打刻 - OffDuty:退勤打刻 |
| approve_type | String | demo | 承認タイプです。 注意 当日に承認フォームがない場合、このフィールドは返されません。 |
| gmt_modified | Date | 2020-11-10 14:33:13 | 最後更新時間です。 |
| gmt_create | Date | 2020-10-26 03:26:59 | 作成時間です。 |
| corp_id | String | dinge8xxxx | 組織 ID(corpId)です。開発者コンソールのホームページで確認できます。 |
| check_date_time | Date | 2020-11-10 14:33:13 | 社員の打刻時間です。 |
| group_id | Number | 394775001 | 勤怠グループ ID です。 |
| class_name | String | dsdsd | シフト名です。 |
| user_id | String | dd_test | ユーザーの userId です。 |
| approve_biz_type | Number | demo | シフト設定に紐づく休暇・勤怠承認のタイプです。 - 1:残業 - 2:出張 - 3:休暇 注意 当日に承認フォームがない場合、このフィールドは返されません。 |
| approve_id | Number | 123 | シフト設定に紐づく承認フォームの ID です。 注意 当日に承認フォームがない場合、このフィールドは返されません。 |
| class_setting_id | Number | 297490031 | シフト設定に関連付けられたシフトの設定 ID です。 注意 グローバル設定を使用している場合、このフィールドは返されません。 |
| approve_tag_name | String | 休暇 | シフト設定に紐づく休暇・勤怠承認フォームの名前です。 注意 当日に承認フォームがない場合、このフィールドは返されません。 |
| features | String | {\"dataSource\":\"adminSetting\",\"flexMinutes\":[60,60],\"overtimeSettingId\":221375127,\"punchId\":524588947} | 拡張フィールドです。 - dataSource:このフィールドは現在、実質的な意味を持ちません。 - flexMinutes:シフトの設定で許容される、遅く出勤して遅く退勤する場合、または早く出勤して早く退勤する場合の柔軟時間です(単位:分)。 - punchId:対応する打刻ポイントの ID です。 - overtimeSettingId:残業ルールの ID です。 |
| class_id | Number | 370370019 | シフト ID です。 |
| check_status | String | Timeout | 打刻ステータスです。 - Init:未打刻 - Checked:打刻済み - Timeout:打刻漏れ |
| work_date | Date | 2020-11-10 00:00:00 | 勤務日です。シフト設定の対象日を示します。 |
| check_end_time | Date | 2020-09-08 09:30:00 | 打刻可能時間帯の終了時刻です。 |
| is_rest | String | N | 休日かどうかを示します。 - Y:休日としてシフト設定済み - N:休日ではない |
| check_begin_time | Date | 2020-09-08 09:00:00 | 打刻可能時間帯の開始時刻です。 |
| real_plan_time | Date | 2020-09-08 10:00:00 | 打刻ポイントでフレックスタイムによる調整をオンにした後、ユーザーが打刻すべき時刻です。 |
| id | Number | 56676915454 | シフト設定 ID です。 |
| success | Boolean | true | リクエストが成功したかどうかを示します。 - true:成功 - false:失敗 |
| errcode | Number | 0 | リターンコードです。 |
| errmsg | String | demo | リターンコードの説明です。 |
| request_id | String | 6bzhf2vn89pv | リクエスト ID です。 |
レスポンスボディの例
{
"errcode": 0,
"result": [
{
"check_date_time": "2020-11-10 09:30:00",
"check_status": "Timeout",
"check_type": "OnDuty",
"class_id": 677995086,
"class_name": "A",
"class_setting_id": 599315627,
"corp_id": "dinge8xxxx",
"features": "{\"flexMinutes\":[30,30],\"overtimeSettingId\":581490201,\"punchId\":346266563}",
"gmt_create": "2020-10-26 03:26:59",
"gmt_modified": "2020-11-10 14:33:13",
"group_id": 685935028,
"id": 156270023005,
"is_rest": "N",
"real_plan_time": "2020-11-10 09:30:00",
"user_id": "user123",
"work_date": "2020-11-10 00:00:00"
},
{
"check_date_time": "2020-11-10 18:30:00",
"check_status": "Timeout",
"check_type": "OffDuty",
"class_id": 677995086,
"class_name": "A",
"class_setting_id": 599315627,
"corp_id": "dinge8xxxx",
"features": "{\"flexMinutes\":[30,30],\"overtimeSettingId\":581490201,\"punchId\":346266564}",
"gmt_create": "2020-10-26 03:26:59",
"gmt_modified": "2020-11-11 02:30:45",
"group_id": 685935028,
"id": 156270023006,
"is_rest": "N",
"real_plan_time": "2020-11-10 18:30:00",
"user_id": "user123",
"work_date": "2020-11-10 00:00:00"
}
],
"success": true,
"request_id": "6bzhf2vn89pv"
}