Employee Resign Report
ดึงรายงานพนักงานที่ลาออกในช่วงวันที่กำหนด
ใช้ API นี้สำหรับเรียกรายงานรายชื่อพนักงานที่ลาออก ข้อมูลครอบคลุมข้อมูลพื้นฐานพนักงาน ข้อมูลองค์กร และสาเหตุการลาออก (ทั้งจากระบบพนักงานและจาก HR) เหมาะสำหรับแสดงผลรายงานบนระบบหรือใช้ตรวจสอบรายการพนักงานลาออกตามช่วงเวลา
Endpoint
POST /api/v1/open-apis/report/employee-resignสิทธิ์ที่ต้องการ: API Key ต้องมีสิทธิ์ ข้อมูลการยื่นเอกสาร (document:manage)
Authorization
ผู้เรียกต้องส่ง authorize_id จึงจะเรียกรายงานนี้ได้
Request Parameters
Required
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
authorize_id | string | Yes | รหัสผู้เรียก API (Base64) ใช้สำหรับตรวจสิทธิ์และข้อมูลผู้ใช้งาน | MjAyNjA0MzBVU0VSMDAwMDAx |
หา authorize_id ได้อย่างไร: รับค่าจาก Get Employee Data Filter โดยใช้ path_action=get-user พร้อม employee_code ของผู้ทำรายการ — ใช้ค่า user_id ที่ได้กลับมาเป็น authorize_id
Date Range Parameters
| Parameter | Type | Default | Description | Example |
|---|---|---|---|---|
date_range_start | string (YYYY-MM-DD) | - | วันที่เริ่มต้นช่วงที่ต้องการตรวจสอบ | 2026-01-01 |
date_range_end | string (YYYY-MM-DD) | - | วันที่สิ้นสุดช่วงที่ต้องการตรวจสอบ | 2026-12-31 |
ถ้าไม่ส่ง date_range_start และ date_range_end ระบบจะดึงข้อมูลพนักงานทั้งหมดที่มีสถานะลาออก โดยไม่จำกัดช่วงวันที่
Filter Parameters
| Parameter | Type | Default | Description | Example |
|---|---|---|---|---|
signout_cause | array<string> | [] | สาเหตุการลาออกจากระบบพนักงาน (รหัส resign cause) | ["04", "05"] |
signout_type_flag | array<string> | [] | ประเภทการลาออกที่กำหนดโดย HR | ["01"] |
employee_type_code | string | - | รหัสประเภทพนักงาน | 01 |
employee_type_group_id | string | - | รหัสกลุ่มประเภทพนักงาน (Base64) | MjAyNjAzMTVHUk9VUDAwMQ== |
company_lists | array | [] | กรองตามบริษัท ใช้ object {id: base64(company_id)} | [{"id":"Q09NUDAwMQ=="}] |
branch_lists | array | [] | กรองตามสาขา | [{"id":"QlJBTkNIMDAx"}] |
department_lists | array | [] | กรองตามแผนก | [{"id":"REVQMDAx"}] |
division_lists | array | [] | กรองตามฝ่าย | [{"id":"RElWMDAx"}] |
section_lists | array | [] | กรองตามหน่วยงาน | [{"id":"U0VDMDAx"}] |
section_lists_lv01 | array | [] | กรองตามหน่วยงานย่อยระดับ 1 | [{"id":"U0VDTFYwMQ=="}] |
section_lists_lv02 | array | [] | กรองตามหน่วยงานย่อยระดับ 2 | [{"id":"U0VDTFYwMg=="}] |
section_lists_lv03 | array | [] | กรองตามหน่วยงานย่อยระดับ 3 | [{"id":"U0VDTFYwMw=="}] |
section_lists_lv04 | array | [] | กรองตามหน่วยงานย่อยระดับ 4 | [{"id":"U0VDTFYwNA=="}] |
section_lists_lv05 | array | [] | กรองตามหน่วยงานย่อยระดับ 5 | [{"id":"U0VDTFYwNQ=="}] |
position_lists | array | [] | กรองตามตำแหน่ง | [{"id":"UE9TMDAx"}] |
Pagination & Language
| Parameter | Type | Default | Description | Example |
|---|---|---|---|---|
_PAGE | integer | 1 | หน้าที่ต้องการ (เริ่มที่ 1) | 1 |
_NUMBER_PER_PAGE | integer | 10 | จำนวนรายการต่อหน้า (1-1000) | 50 |
language_code | string | TH | ภาษาของชื่อพนักงาน/รายการที่แปลได้ (TH, EN) | TH |
โครงสร้าง List Parameters
*_lists ทุก parameter ใช้ array ของ object ที่มี id เป็น Base64 encoded:
[
{ "id": "Q09NUDAwMQ==" },
{ "id": "Q09NUDAwMg==" }
]Option Values: signout_cause
รหัสสาเหตุการลาออก (จากเอกสารลาออกของพนักงาน) ใช้กับพารามิเตอร์ signout_cause:
| Code | ภาษาไทย | English |
|---|---|---|
01 | ไม่ถนัดกับงานที่ได้รับมอบหมาย | Not good at the assigned work |
02 | ไม่เข้าใจ/ขาดทักษะในงาน | Lack of understanding/lack of skills in the job |
03 | ไม่เห็นโอกาสความก้าวหน้าในอาชีพการงาน | No career advancement opportunity |
04 | เงินเดือน/ค่าตอบแทนน้อยกว่าที่ต้องการ | Salary/compensation less than desired |
05 | สวัสดิการ/สิทธิประโยชน์น้อยกว่าที่ต้องการ | Welfare/benefits are less than desired |
06 | ไม่ได้รับความเป็นธรรมจากผู้บังคับบัญชา | Received unfair treatment from superiors |
07 | มีปัญหาความสัมพันธ์กับหัวหน้าหน่วยงาน | Having relationship problems with the head of the department |
08 | มีปัญหาความสัมพันธ์กับหัวหน้างาน | Having relationship problems with your supervisor |
09 | ไม่มีพี่เลี้ยงช่วยสอน/แนะนำงาน ถ่ายทอดประสบการณ์ | There is no mentor to help teach/advise on work or share experiences |
10 | คุณภาพชีวิตการทำงานไม่ดี | Poor quality of work life |
11 | งานน่าเบื่อ จำเจ ไม่มีโอกาสเรียนรู้งานใหม่ๆ | The work is boring and monotonous, no opportunity to learn new things |
12 | งานเสี่ยงอันตราย | Hazardous work |
13 | ปัญหาการเดินทาง | Travel problems |
14 | ปัญหาส่วนตัว/ครอบครัว | Personal/family issues |
15 | ปัญหาสุขภาพ | Health problems |
16 | ศึกษาต่อ | Continue your studies |
17 | ประกอบธุรกิจ/อาชีพส่วนตัว | Engaged in business/self-employment |
18 | กลับภูมิลำเนาเดิม | Return to hometown |
19 | ได้งานใหม่ที่ชอบมากกว่า | Got a new job that I like more |
99 | อื่นๆ | Other |
Validation Rules
| กฎ | รายละเอียด |
|---|---|
authorize_id | ต้องไม่ว่าง และต้องผ่านสิทธิ์ document:manage |
date_range_start, date_range_end | ถ้าระบุ ต้องตรงรูปแบบ YYYY-MM-DD |
Code Examples
ดึงข้อมูลทั้งหมด
curl -X POST "https://openapi.humansoft.co.th/api/v1/open-apis/report/employee-resign" \
-H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"authorize_id": "MjAyNjA0MzBVU0VSMDAwMDAx"
}'Response Format
Success Response (HTTP 200)
{
"code": 200,
"message": "Success",
"payload": [
{
"employee_code": "EMP001",
"employee_name": "สมชาย ใจดี (ชาย)",
"id_no": "1-2345-67890-12-3",
"passport_workpermit_no": "",
"birth_dt": "1990-01-01",
"employee_type_group": "01 : พนักงานประจำ",
"employee_type": "รายเดือน",
"company_name": "บริษัท ตัวอย่าง จำกัด",
"branch_name": "สำนักงานใหญ่",
"department_name": "ฝ่ายไอที",
"position_name": "Software Engineer",
"position_level": "L1",
"effective_dt": "2020-01-01",
"signout_dt": "2026-03-15",
"work_age": "6 ปี 2 เดือน 15 วัน",
"signout_cause": "ลาออกเอง",
"resign_cause_detail": "ไปประกอบธุรกิจส่วนตัว",
"remark": "ทำงานวันสุดท้ายวันที่ 14"
}
],
"_PAGINATION": {
"_TOTAL_RECORDS": 1,
"_PAGE": 1,
"_NUMBER_PER_PAGE": 50
}
}Response Fields
| Field | Type | Description |
|---|---|---|
employee_code | string | รหัสพนักงาน |
employee_name | string | ชื่อ-นามสกุล (ชื่อเล่น) ตาม language_code |
id_no | string | เลขบัตรประชาชน (สำหรับสัญชาติไทย) |
passport_workpermit_no | string | เลข Passport / Work Permit (สำหรับชาวต่างชาติ) |
birth_dt | string (YYYY-MM-DD) | วันเกิด |
employee_type_group | string | กลุ่มประเภทพนักงาน (code : name) |
employee_type | string | ประเภทพนักงาน (เช่น รายเดือน, รายวัน) |
company_name | string | ชื่อบริษัท |
branch_name | string | ชื่อสาขา |
department_name | string | ชื่อแผนก |
position_name | string | ชื่อตำแหน่ง |
position_level | string | ระดับตำแหน่ง |
effective_dt | string (YYYY-MM-DD) | วันที่เริ่มงาน |
signout_dt | string (YYYY-MM-DD) | วันที่ลาออก |
work_age | string | อายุงานทั้งหมด (รูปแบบ X ปี Y เดือน Z วัน) |
signout_cause | string | สาเหตุการลาออก (สรุปจากระบบ HR ตาม signout_type_flag) |
resign_cause_detail | string | รายละเอียดสาเหตุการลาออก (จากเอกสารลาออกของพนักงาน) |
remark | string | หมายเหตุการลาออก (รวมข้อเสนอแนะถ้ามี) |
Pagination Fields
| Field | Type | Description |
|---|---|---|
_PAGINATION._TOTAL_RECORDS | integer | จำนวนรายการทั้งหมดที่ตรงเงื่อนไข |
_PAGINATION._PAGE | integer | หน้าปัจจุบัน |
_PAGINATION._NUMBER_PER_PAGE | integer | จำนวนรายการต่อหน้า |
Error Response
Validation Error (HTTP 400)
{
"code": 400,
"message": "Validation failed",
"errors": [
"Missing required parameter: 'authorize_id'"
]
}Date Format Error (HTTP 400)
{
"code": 400,
"message": "Validation failed",
"errors": [
"'date_range_start' must be in YYYY-MM-DD format (e.g., 2026-01-01)"
]
}Permission Denied (HTTP 403)
{
"code": 403,
"message": "Permission denied",
"errors": ["User does not have 'document:manage' permission"]
}Notes & Best Practices
- ทุก ID ใน
*_listsต้อง encode เป็น Base64 และส่งในรูปแบบ{id: "..."} - ทุกวันที่ใช้ Timezone
UTC+7(Thailand) - หากต้องการข้อมูลจำนวนมาก แนะนำให้ใช้ Pagination (
_PAGE,_NUMBER_PER_PAGE) เพื่อลดเวลา response signout_causeใช้กรองตาม สาเหตุที่พนักงานระบุในเอกสารลาออก ส่วนsignout_type_flagใช้กรองตาม ประเภทที่ HR กำหนด สามารถใช้ทั้งคู่พร้อมกันได้- รายการในผลลัพธ์เรียงตาม
signout_dt(วันที่ลาออก) จากน้อยไปมาก