Permintaan
| Informasi dasar | |
|---|---|
| URL HTTP | https://api.dingtalk.io/topapi/attendance/shift/query |
| Metode HTTP | POST |
| Tipe aplikasi yang didukung | appType-Aplikasi internal appType-Aplikasi perusahaan pihak ketiga |
| Izin | permission-qyapi_attendance_group_read-Izin kueri grup absensi |
Parameter kueri
| Nama | Tipe | Wajib | Contoh | Deskripsi |
|---|---|---|---|---|
| access_token | String | Ya | bE74xxxx | Kredensial aplikasi yang digunakan untuk memanggil API ini. - Untuk Aplikasi internal, panggil API Mendapatkan access_token Aplikasi internal untuk memperolehnya. - Untuk Aplikasi perusahaan pihak ketiga, panggil API Mendapatkan access_token Aplikasi perusahaan pihak ketiga untuk memperolehnya. |
Isi permintaan
| Nama | Tipe | Wajib | Contoh | Deskripsi |
|---|---|---|---|---|
| op_user_id | String | Ya | user123 | userId operator. |
| shift_id | Number | Ya | 678215070 | ID shift. Panggil API Mendapatkan ringkasan shift untuk memperoleh nilai parameter id. |
Contoh permintaan
curl -X POST "https://api.dingtalk.io/topapi/attendance/shift/query" \
-H 'Content-Type:application/x-www-form-urlencoded;charset=utf-8' \
-d 'access_token=d946568c-08dd-44bf-acd3-cfc07d7829dd' \
-d 'op_user_id=dd_dd' \
-d 'shift_id=2445'
DingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/attendance/shift/query");
OapiAttendanceShiftQueryRequest req = new OapiAttendanceShiftQueryRequest();
req.setOpUserId("user123");
req.setShiftId(678215070L);
OapiAttendanceShiftQueryResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());
import dingtalk.api
req=dingtalk.api.OapiAttendanceShiftQueryRequest("https://api.dingtalk.io/topapi/attendance/shift/query")
req.op_user_id="dd_dd"
req.shift_id=2445
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 OapiAttendanceShiftQueryRequest;
$req->setOpUserId("dd_dd");
$req->setShiftId("2445");
$resp = $c->execute($req, $access_token, "https://api.dingtalk.io/topapi/attendance/shift/query");
IDingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/attendance/shift/query");
OapiAttendanceShiftQueryRequest req = new OapiAttendanceShiftQueryRequest();
req.OpUserId = "dd_dd";
req.ShiftId = 2445L;
OapiAttendanceShiftQueryResponse rsp = client.Execute(req, access_token);
Console.WriteLine(rsp.Body);
Respons
Isi respons
| Nama | Tipe | Contoh | Deskripsi |
|---|---|---|---|
| result | TopShiftVo | Detail shift. | |
| shift_group_name | String | Shift absensi | Nama grup shift. |
| corp_id | String | dinge87f1xxxx | ID organisasi. |
| shift_setting | TopShiftSettingVo | Pengaturan shift. | |
| shift_id | Number | 678215070 | ID shift. |
| gmt_modified | Date | 2020-09-06 15:49:27 | Waktu terakhir shift diubah. |
| corp_id | String | dinge87f1xxxx | ID organisasi. |
| work_time_minutes | Number | 600 | Durasi kerja, dalam menit. Nilai -1 menunjukkan bahwa fitur ini dinonaktifkan. |
| id | Number | 233840112 | ID pengaturan shift. |
| attend_days | String | 12 | Jumlah hari kehadiran untuk shift ini. |
| gmt_create | Date | 2020-09-06 15:49:27 | Waktu pembuatan. |
| name | String | B | Nama shift. |
| id | Number | 678215070 | ID shift. |
| sections | TopSectionVo[] | Sesi absen. | |
| punches | TopPunchVo[] | Titik absen. | |
| check_type | String | OnDuty | Tipe absen: - OnDuty: Absen masuk - OffDuty: Absen pulang |
| end_min | Number | -1 | Batas waktu absen paling lambat yang diizinkan. Nilai dalam menit. Tambahkan nilai ini ke waktu absen untuk menghitung waktu absen paling lambat. |
| across | Number | 0 | Apakah waktu absen jatuh pada hari berikutnya: - 0: Hari yang sama - 1: Hari berikutnya |
| check_time | Date | 1970-01-01 19:00:00 | Waktu absen, dalam format Unix timestamp. Hanya jam, menit, dan detik yang bermakna. |
| permit_minutes | Number | 0 | Durasi pulang lebih awal atau keterlambatan yang diizinkan, dalam menit. |
| free_check | Boolean | false | Apakah dibebaskan dari absen: - true: Bebas absen - false: Wajib absen |
| id | Number | 33928201 | ID titik absen. |
| begin_min | Number | 20 | Waktu paling awal yang diizinkan untuk absen lebih dahulu, dalam menit. |
| absenteeism_late_minutes | String | -1 | Durasi pulang lebih awal atau keterlambatan yang dihitung sebagai mangkir, dalam menit. |
| serious_late_minutes | String | -1 | Durasi pulang lebih awal atau keterlambatan yang dihitung sebagai pelanggaran berat, dalam menit. |
| rests | TopRestVo[] | Informasi periode istirahat. | |
| check_type | String | OnDuty | Tipe istirahat: - OnDuty: Mulai istirahat - OffDuty: Selesai istirahat |
| across | Number | 1 | Apakah waktu istirahat jatuh pada hari berikutnya: - 0: Hari yang sama - 1: Hari berikutnya |
| check_time | String | 1970-01-01 05:00:00 | Waktu istirahat. |
| id | Number | 33928203 | ID titik istirahat. |
| id | Number | 22979360 | ID sesi absen. Satu pasang absen masuk dan absen pulang membentuk satu sesi. Satu shift dapat berisi beberapa sesi. |
| shift_group_id | Number | demo | ID grup shift. |
| owner | String | user123 | userId pemilik shift. |
| success | Boolean | true | Apakah panggilan berhasil. - true: Berhasil - false: Gagal |
| errcode | Number | 0 | Kode pengembalian. |
| errmsg | String | demo | Deskripsi kode pengembalian. |
Contoh isi respons
{
"errcode": 0,
"errmsg": "demo",
"result": {
"corp_id": "dinge87f1xxxx",
"id": 678215070,
"name": "B",
"sections": [
{
"id": 316940162,
"punches": [
{
"absenteeism_late_minutes": "-1",
"across": 0,
"check_time": "1970-01-01 19:00:00",
"check_type": "OnDuty",
"free_check": false,
"id": 340055347,
"permit_minutes": 0,
"serious_late_minutes": "-1"
},
{
"across": 1,
"check_time": "1970-01-01 05:00:00",
"check_type": "OffDuty",
"free_check": false,
"id": 340055348
}
],
"rests": []
}
],
"shift_setting": {
"corp_id": "dinge87f1xxxx",
"gmt_create": "2020-09-06 15:49:27",
"gmt_modified": "2020-09-06 15:49:27",
"id": 586985140,
"is_deleted": "N",
"shift_id": 678215070,
"work_time_minutes": 600
}
},
"success": true,
"request_id": "3pph7tq865kz"
}