List Quotas
ดึงรายการโควตาการลาของพนักงานทั้งหมดในปีที่ระบุ รองรับการกรองตามโครงสร้างองค์กร การค้นหา การเรียงลำดับ และ Pagination
Endpoint
GET /api/v1/open-apis/salary/get-data-filter?path_action=list_quotasQuery Parameters
Required Parameters
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
path_action | string | Yes | ต้องเป็น list_quotas | "list_quotas" |
quota_year | string | Yes | ปีโควตา (YYYY) | "2026" |
Optional Parameters — Single Value Filter
| Parameter | Type | Default | Description | Example |
|---|---|---|---|---|
keyword | string | - | ค้นหาจากรหัส/ชื่อ/นามสกุลพนักงาน (Partial match) | "สมชาย" |
company_id | string | - | กรองตามบริษัท (Base64 encoded) | "MjAyNDEyMjVDMzAyNDk1OEM5NzQ=" |
branch_id | string | - | กรองตามสาขา (Base64 encoded) | "MjAyNDEyMjU0MzU4NjQ2QjM0RTQ=" |
department_id | string | - | กรองตามแผนก (Base64 encoded) | "MjAyNTEwMDYxOTJGRTg4RTk3QTU=" |
division_id | string | - | กรองตามฝ่าย (Base64 encoded) | - |
section_id | string | - | กรองตามหมวด (Base64 encoded) | - |
position_id | string | - | กรองตามตำแหน่ง (Base64 encoded) | "MjAyNDEyMjU4N0MyMTZEQTJDMTk=" |
employee_id | string | - | กรองตามพนักงาน (Base64 encoded) | - |
time_leave_flag | string | - | กรองตามประเภทการลา | "01", "06" |
language_code | string | "TH" | ภาษาสำหรับแสดงผล | "TH", "EN" |
Optional Parameters — Multiple Values Filter
ใช้สำหรับกรองหลายค่าพร้อมกัน แนะนำส่งผ่าน POST body
| Parameter | Type | Description |
|---|---|---|
company_lists | array | รายการบริษัท [{"id": "base64_id"}, ...] |
branch_lists | array | รายการสาขา |
department_lists | array | รายการแผนก |
division_lists | array | รายการฝ่าย |
section_lists | array | รายการหมวด |
position_lists | array | รายการตำแหน่ง |
employee_lists | array | รายการพนักงาน |
แต่ละ item ใน array ต้องมี id field ที่เป็น Base64 encoded ถ้าส่งเป็น [] หมายถึงไม่กรองตามฟิลด์นั้น
Sorting & Pagination Parameters
| Parameter | Type | Default | Description | Valid Values |
|---|---|---|---|---|
sort_by | string | - | ฟิลด์ที่ใช้เรียงลำดับ | employee_code, employee_name, quota_year, time_leave_flag, created |
sort_order | string | - | ทิศทางการเรียง | ASC, DESC |
_PAGE | integer | 1 | หมายเลขหน้า (เริ่มที่ 1) | >= 1 |
_NUMBER_PER_PAGE | integer | 50 | จำนวนรายการต่อหน้า | 1-1000 |
Response Format
Success Response
{
"code": 200,
"message": "สำเร็จ",
"payload": [
{
"quota_id": "202503219741427917A0",
"employee_id": "202503219741427917A0",
"employee_code": "EMP001",
"employee_name": "สมชาย",
"employee_last_name": "ใจดี",
"quota_year": "2026",
"time_leave_flag": "01",
"time_leave_flag_name": "ลากิจได้รับค่าจ้าง",
"time_leave_flag_name_en": "Leave with paid",
"time_leave_flag_quota": "10",
"actual": 2,
"unit": "วัน",
"company_name": "บริษัท ABC จำกัด",
"branch_name": "สาขากรุงเทพ",
"department_name": "ฝ่ายบริหาร",
"position_name": "ผู้จัดการ",
"created": "2026-01-10 10:30:00"
}
],
"_PAGINATION": {
"_TOTAL_RECORDS": 150,
"_PAGE": 1,
"_NUMBER_PER_PAGE": 50
}
}Empty Result
{
"code": 200,
"message": "สำเร็จ",
"payload": [],
"_PAGINATION": {
"_TOTAL_RECORDS": 0,
"_PAGE": 1,
"_NUMBER_PER_PAGE": 50
}
}Response Fields
| Field | Type | Nullable | Description |
|---|---|---|---|
payload[].quota_id | string | No | ID โควตา (plain text) |
payload[].employee_id | string | No | ID พนักงาน (plain text) |
payload[].employee_code | string | No | รหัสพนักงาน |
payload[].employee_name | string | No | ชื่อพนักงาน (ตาม language_code) |
payload[].employee_last_name | string | No | นามสกุลพนักงาน (ตาม language_code) |
payload[].quota_year | string | No | ปีโควตา (YYYY) |
payload[].time_leave_flag | string | No | รหัสประเภทการลา (01-09) |
payload[].time_leave_flag_name | string | No | ชื่อประเภทการลา (ไทย) |
payload[].time_leave_flag_name_en | string | No | ชื่อประเภทการลา (อังกฤษ) |
payload[].time_leave_flag_quota | string | No | จำนวนโควตา |
payload[].actual | number | No | จำนวนที่ใช้ไปแล้ว |
payload[].unit | string | No | หน่วย: "วัน" หรือ "ชั่วโมง" |
payload[].company_name | string | Yes | ชื่อบริษัท |
payload[].branch_name | string | Yes | ชื่อสาขา |
payload[].department_name | string | Yes | ชื่อแผนก |
payload[].position_name | string | Yes | ชื่อตำแหน่ง |
payload[].created | string | No | วันเวลาที่สร้าง (YYYY-MM-DD HH:mm:ss) |
_PAGINATION._TOTAL_RECORDS | number | No | จำนวนรายการทั้งหมด |
_PAGINATION._PAGE | number | No | หน้าปัจจุบัน |
_PAGINATION._NUMBER_PER_PAGE | number | No | จำนวนรายการต่อหน้า |
Error Response
{
"code": 400,
"message": "ไม่สำเร็จ",
"errors": ["Missing required parameter: 'quota_year'"]
}Code Examples
cURL
curl -X GET "https://openapi.humansoft.co.th/api/v1/open-apis/salary/get-data-filter?path_action=list_quotas"a_year=2026&_PAGE=1&_NUMBER_PER_PAGE=50&language_code=TH" \
-H "Ocp-Apim-Subscription-Key: YOUR_API_KEY"Notes
quota_yearต้องเป็นรูปแบบ YYYY เช่น"2026"- ชื่อพนักงานจะเปลี่ยนตาม
language_codeแต่ฟิลด์_enจะส่งมาเสมอ - การค้นหาด้วย
keywordจะ match แบบ partial กับรหัส/ชื่อ/นามสกุลพนักงาน - จำนวนหน้าทั้งหมด =
ceil(_TOTAL_RECORDS / _NUMBER_PER_PAGE) - เมื่อได้ HTTP 413 ให้ใช้ filter แคบลงหรือลด
_NUMBER_PER_PAGE
Related APIs
- Get Quota by ID - ดูรายละเอียดโควตารายการเดียว
- Get Quota by Employee - ดูโควตาทั้งหมดของพนักงานคนเดียว
- Save Quota - สร้าง/อัปเดตโควตา
- Delete Quota - ลบโควตา
Last updated on