> ## Documentation Index
> Fetch the complete documentation index at: https://help.dingtalk.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Kueri status cuti

> Gunakan API DingTalk ini untuk mengkueri status cuti harian dan durasi cuti pengguna berdasarkan daftar ID pengguna, dengan paginasi dan rentang hingga 180 hari.

Panggil API ini untuk mengkueri status cuti harian dan durasi cuti pengguna tertentu dalam organisasi tertentu pada rentang waktu yang ditentukan.

## Permintaan

| **Informasi dasar** | |
| - | - |
| URL HTTP | [https://api.dingtalk.io/topapi/attendance/getleavestatus](https://api.dingtalk.io/topapi/attendance/getleavestatus) |
| Metode HTTP | POST |
| Tipe aplikasi yang didukung | appType-Aplikasi internal　appType-Aplikasi perusahaan pihak ketiga |
| Izin yang diperlukan | permission-qyapi\_get\_attendance\_data-Izin baca data absensi |

### Parameter kueri

| Nama | Tipe | Wajib | Contoh | Deskripsi |
| - | - | - | - | - |
| access\_token | String | Ya | 6d1bxxxx | Kredensial aplikasi yang digunakan untuk memanggil API ini. Dapatkan dengan memanggil [Mendapatkan access\_token Aplikasi internal](https://help.dingtalk.io/id/open/development/obtain-orgapp-token). |

### Isi permintaan

| Nama | Tipe | Wajib | Contoh | Deskripsi |
| - | - | - | - | - |
| userid\_list | String | Ya | user456,user123 | Daftar ID pengguna yang akan dikueri. Maksimal 100 ID per permintaan. |
| start\_time | Number | Ya | 1538323200000 | Waktu mulai, dalam format Unix timestamp. Rentang kueri maksimal 180 hari. |
| end\_time | Number | Ya | 1546358399000 | Waktu berakhir, dalam format Unix timestamp. Rentang kueri maksimal 180 hari. |
| offset | Number | Ya | 0 | Offset paginasi, dimulai dari 0. Hanya berlaku jika diatur bersama parameter size. |
| size | Number | Ya | 10 | Ukuran halaman. Nilai maksimal: 20. Hanya berlaku jika diatur bersama parameter offset. |

### Contoh permintaan

```curl theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -X POST "https://api.dingtalk.io/topapi/attendance/getleavestatus" \
-H 'Content-Type:application/x-www-form-urlencoded;charset=utf-8' \
-d 'access_token=11b9xxxxc35a' \
-d 'end_time=1546358399000' \
-d 'offset=0' \
-d 'size=10' \
-d 'start_time=1538323200000' \
-d 'userid_list=123%2C121'
```

Java

```java theme={"theme":{"light":"github-light","dark":"github-dark"}}
DingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/attendance/getleavestatus");
OapiAttendanceGetleavestatusRequest req = new OapiAttendanceGetleavestatusRequest();
req.setUseridList("user123,user456");
req.setStartTime(1538323200000L);
req.setEndTime(1546358399000L);
req.setOffset(0L);
req.setSize(10L);
OapiAttendanceGetleavestatusResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());
```

Python

```python theme={"theme":{"light":"github-light","dark":"github-dark"}}
import dingtalk.api

req=dingtalk.api.OapiAttendanceGetleavestatusRequest("https://api.dingtalk.io/topapi/attendance/getleavestatus")

req.userid_list="123,121"
req.start_time=1538323200000
req.end_time=1546358399000
req.offset=0
req.size=10
try:
  resp= req.getResponse(access_token)
  print(resp)
except Exception,e:
  print(e)
```

PHP

```php theme={"theme":{"light":"github-light","dark":"github-dark"}}
include "TopSdk.php";
date_default_timezone_set('Asia/Shanghai');

$c = new DingTalkClient(DingTalkConstant::$CALL_TYPE_OAPI, DingTalkConstant::$METHOD_POST , DingTalkConstant::$FORMAT_JSON);
$req = new OapiAttendanceGetleavestatusRequest;
$req->setUseridList("123,121");
$req->setStartTime("1538323200000");
$req->setEndTime("1546358399000");
$req->setOffset("0");
$req->setSize("10");
$resp = $c->execute($req, $access_token, "https://api.dingtalk.io/topapi/attendance/getleavestatus");
```

C#

```csharp theme={"theme":{"light":"github-light","dark":"github-dark"}}
IDingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/attendance/getleavestatus");
OapiAttendanceGetleavestatusRequest req = new OapiAttendanceGetleavestatusRequest();
req.UseridList = "123,121";
req.StartTime = 1538323200000L;
req.EndTime = 1546358399000L;
req.Offset = 0L;
req.Size = 10L;
OapiAttendanceGetleavestatusResponse rsp = client.Execute(req, access_token);
Console.WriteLine(rsp.Body);
```

## Respons

### Isi respons

| Nama | Tipe | Contoh | Deskripsi |
| - | - | - | - |
| errcode | Number | 0 | Kode pengembalian. |
| result | LeaveStatusListVO | | Hasil kueri. |
| has\_more | Boolean | true | Menunjukkan apakah masih ada data lainnya.   - **true**: Ya - **false**: Tidak |
| leave\_status | LeaveStatusVO\[] | | Daftar status cuti. |
| duration\_unit | String | percent\_day | Satuan cuti:   - **percent\_day**: Hari - **percent\_hour**: Jam |
| duration\_percent | Number | 100 | Durasi cuti dikalikan 100. Contoh: jika durasi cuti pengguna adalah 1 hari, nilai ini adalah 100. |
| end\_time | Number | 1599465600000 | Waktu berakhir cuti, dalam format Unix timestamp. |
| start\_time | Number | 1599372000000 | Waktu mulai cuti, dalam format Unix timestamp. |
| userid | String | user456 | ID pengguna. |
| success | Boolean | true | Menunjukkan apakah permintaan berhasil.   - **true**: Berhasil - **false**: Gagal |
| request\_id | String | 5lbpbi9p1awk | ID permintaan. |

### Contoh isi respons

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "errcode": 0,
  "result": {
    "has_more": false,
    "leave_status": [
      {
        "duration_percent": 650,
        "duration_unit": "percent_hour",
        "end_time": 1599465600000,
        "start_time": 1599372000000,
        "leave_code":"16f856xxxx09aa16"
        "userid": "user123"
      }
    ]
  },
  "success": true,
  "request_id": "5lbpbi9p1awk"
}
```

### Kode error

Jika panggilan API ini mengembalikan error, cari solusinya berdasarkan pesan error di dokumen [Kode error global](https://help.dingtalk.io/id/open/development/server-api-error-codes-1.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.