Skip to Content
🚀 Welcome to Humansoft Open API Documentation

Daily Info

ดึงข้อมูลรายละเอียดวันทำงานของพนักงานในวันที่ระบุ แสดงกะ, เวลาเข้า-ออก, เอกสารลา/OT/แก้เวลา, สรุปเวลาทำงานรายวัน และ options ต่างๆ สำหรับการจัดการเวลา

Endpoint

GET /api/v1/open-apis/salary/get-data-filter?path_action=daily_info

สิทธิ์ที่ต้องการ: API Key ต้องมีสิทธิ์ ข้อมูลเงินเดือนของพนักงาน (payroll:read:self)

Request Parameters

ParameterTypeRequiredDescriptionExample
employee_codestringYesรหัสพนักงาน"EMP001"
work_datestringYesวันที่ทำงาน (YYYY-MM-DD)"2026-02-18"
language_codestringNoภาษา: TH หรือ EN (ค่าเริ่มต้น: TH)"TH"

Validation Rules

RuleDescription
employee_codeต้องมีอยู่ในระบบ ถ้าไม่พบจะ return error 404
work_dateต้องเป็นรูปแบบ YYYY-MM-DD และต้องเป็นวันที่ถูกต้อง
language_codeรองรับเฉพาะ TH หรือ EN (case-insensitive)

Response Format

Success Response

{ "code": 200, "message": "Success", "payload": { "work_date": "2026-02-18", "work_date_format": "18/02/2026", "day_status": "วันทำงาน", "holiday_count": 0, "holiday_flag_lv": "00", "work_cycle": "WC002 09:00 - 12:00 - 13:00 - 18:00", "work_cycle_code": "WC002", "work_cycle_time": "09:00 - 12:00 - 13:00 - 18:00", "work_cycle_start_time": "2026-02-18 09:00:00", "work_cycle_end_time": "2026-02-18 18:00:00", "break_cycle_start_time": "2026-02-18 12:00:00", "break_cycle_end_time": "2026-02-18 13:00:00", "read_only_flag": "N", "time": [ { "time_attendance_transac_id": "20260218ABC123456789", "attendance_datetime": "2026-02-18 09:05:00", "work_type_lv": "01", "time_attendance_type_lv": "Manual" }, { "time_attendance_transac_id": "20260218DEF987654321", "attendance_datetime": "2026-02-18 18:10:00", "work_type_lv": "02", "time_attendance_type_lv": "Manual" } ], "docs": { "Leave": [], "Work_Cycle": [], "Holiday": [], "OT": [], "Time_Adjust": [] }, "ot_flag": [ { "code": "01", "name": "OT 1.0 เท่า" }, { "code": "02", "name": "OT 1.5 เท่า" }, { "code": "03", "name": "OT 2.0 เท่า" }, { "code": "04", "name": "OT 3.0 เท่า" } ], "leave_flag": [ { "code": "01", "name": "ลาป่วย", "flag": "D" }, { "code": "02", "name": "ลากิจ", "flag": "D" }, { "code": "03", "name": "ลาพักร้อน", "flag": "D" } ], "holiday_flag": [ { "code": "00", "name": "ไม่หยุด" }, { "code": "01", "name": "วันหยุดนักขัตฤกษ์" }, { "code": "03", "name": "วันหยุดพนักงาน" }, { "code": "04", "name": "วันหยุดพิเศษ" } ], "work_cycle_flag": [ { "code": "20250408ABC123456789", "name": "WC001 - กะเช้า" }, { "code": "20250408DEF987654321", "name": "WC002 - กะปกติ" } ], "time_adjust_flag": [ { "code": "01", "name": "แก้เวลาเข้า" }, { "code": "02", "name": "แก้เวลาออก" }, { "code": "03", "name": "แก้เวลาเข้า-ออก" } ], "summary": { "morning": { "status": "ไม่มาเช้า", "sum_time": "00:00:00", "total": 0 }, "late": { "status": "มาสาย", "sum_time": "00:15:00", "total": 50 }, "lunch_over": { "status": "ไม่พักเกิน", "sum_time": "00:00:00", "total": 0 }, "lunch_under": { "status": "ไม่พักไว", "sum_time": "00:00:00", "total": 0 }, "early": { "status": "กลับก่อน", "sum_time": "00:30:00", "total": 100 }, "after": { "status": "ไม่กลับช้า", "sum_time": "00:00:00", "total": 0 }, "lost": { "status": "ขาดงาน", "day": 0, "sum_time": "00:00:00", "total": 0 }, "ot_1_0": { "name": "OT 1.0", "rate": "1.0", "work_count": 0, "sum_time": "00:00:00", "total": 0 }, "ot_1_5": { "name": "OT 1.5", "rate": "1.5", "work_count": 0, "sum_time": "00:00:00", "total": 0 }, "work_total_in_cycle": "09:00:00", "work_sum_time": "09:00:00", "work_total_time": "09:00:00" } } }

Key Response Fields

FieldTypeDescription
work_datestringวันที่ทำงาน (YYYY-MM-DD)
work_date_formatstringวันที่ทำงาน (DD/MM/YYYY)
day_statusstringสถานะวัน
holiday_countintegerจำนวนวันหยุด: 0 (ไม่หยุด) หรือ 1 (หยุด)
holiday_flag_lvstringรหัสประเภทวันหยุด
work_cyclestringข้อมูลกะการทำงาน (รหัส + เวลา)
work_cycle_codestringรหัสกะการทำงาน
work_cycle_timestringเวลากะ (HH:mm - HH:mm - HH:mm - HH:mm)
work_cycle_start_timestringเวลาเริ่มงาน (YYYY-MM-DD HH:mm:ss)
work_cycle_end_timestringเวลาเลิกงาน (YYYY-MM-DD HH:mm:ss)
break_cycle_start_timestringเวลาเริ่มพัก (YYYY-MM-DD HH:mm:ss)
break_cycle_end_timestringเวลาสิ้นสุดพัก (YYYY-MM-DD HH:mm:ss)
read_only_flagstringสถานะ read-only: "Y" (แก้ไขไม่ได้), "N" (แก้ไขได้)
timearrayรายการลงเวลาเข้า-ออก
docsobjectเอกสารที่เกี่ยวข้อง (Leave, Work_Cycle, Holiday, OT, Time_Adjust)
ot_flagarrayรายการ OT flags ที่ใช้ได้
leave_flagarrayรายการ Leave flags ที่ใช้ได้
holiday_flagarrayรายการ Holiday flags ทั้งหมด
work_cycle_flagarrayรายการกะทำงานทั้งหมด
time_adjust_flagarrayรายการประเภทการแก้เวลาทั้งหมด
summaryobjectสรุปเวลาทำงานรายวัน (มาสาย, กลับก่อน, ขาดงาน, OT)

time[] Fields

FieldTypeDescription
time_attendance_transac_idstringรหัสรายการลงเวลา
attendance_datetimestringวันเวลาที่ลงเวลา (YYYY-MM-DD HH:mm:ss)
work_type_lvstringประเภทการลงเวลา: "01" (เข้างาน), "02" (ออกงาน)
time_attendance_type_lvstringวิธีการลงเวลา: "Manual", "Fingerprint", "Face", "Card", "GPS"

docs Fields

แต่ละเอกสาร (Leave, Work_Cycle, Holiday, OT, Time_Adjust) มี structure ดังนี้:

FieldTypeDescription
doc_idstringรหัสเอกสาร
flag_namestringชื่อประเภท เช่น "ลาป่วย", "OT 1.5 เท่า"
flag_valuestringสถานะอนุมัติ: "รออนุมัติ", "อนุมัติ", "ไม่อนุมัติ"

summary Fields

สรุปเวลาทำงานรายวัน — ชื่อ labels (status, name) สามารถปรับแต่งได้จากการตั้งค่าเวลาการทำงานของบริษัท

Work Summary (morning, late, lunch_over, lunch_under, early, after)

FieldTypeDescription
statusstringสถานะ ถ้าไม่เข้าเงื่อนไขจะขึ้นต้นด้วย “ไม่” (TH) หรือ “Not ” (EN)
sum_timestringรวมเวลา (HH:mm:ss)
totalnumberยอดรวมเงิน (บาท)

Lost Summary (ขาดงาน)

FieldTypeDescription
statusstringสถานะขาดงาน
daynumberจำนวนวันขาด
sum_timestringรวมเวลาขาด (HH:mm:ss)
totalnumberยอดรวมเงินหัก (บาท)

OT Summary (ot_1_0 ~ ot_7_0)

FieldTypeDescription
namestringชื่อ OT เช่น "OT 1.0", "OT 1.5"
ratestringอัตรา OT: "1.0" ~ "7.0"
work_countintegerจำนวนครั้งที่ทำ OT
sum_timestringรวมเวลา OT (HH:mm:ss)
totalnumberยอดรวมเงิน OT (บาท)

Work Total

FieldTypeDescription
work_total_in_cyclestringเวลาทำงานรวมในรอบกะ (HH:mm:ss)
work_sum_timestringเวลาทำงานรวมที่คำนวณได้ (HH:mm:ss)
work_total_timestringเวลาทำงานรวมทั้งหมด (HH:mm:ss)

Option Values

day_status

ValueDescription
"วันทำงาน"วันทำงานปกติ
"วันหยุดพนักงาน"วันหยุดของพนักงานคนนี้
"วันหยุดนักขัตฤกษ์"วันหยุดนักขัตฤกษ์
"ยังไม่ได้เริ่มงาน/ลาออกไปแล้ว"พนักงานยังไม่เริ่มงานหรือลาออกไปแล้ว

holiday_flag_lv

CodeName
"00"ไม่หยุด (วันทำงาน)
"01"วันหยุดนักขัตฤกษ์
"03"วันหยุดพนักงาน
"04"วันหยุดพิเศษ

work_type_lv

CodeDescription
"01"เข้างาน (IN)
"02"ออกงาน (OUT)

time_attendance_type_lv

ValueDescription
"Manual"ลงเวลาด้วยตนเอง
"Fingerprint"ลงเวลาด้วยลายนิ้วมือ
"Face"ลงเวลาด้วยใบหน้า
"Card"ลงเวลาด้วยบัตร
"GPS"ลงเวลาด้วย GPS

read_only_flag

ValueDescription
"Y"ปิดแล้ว ไม่สามารถแก้ไขข้อมูลได้ (รอบเดือน/รอบ OT/รอบเวลาทำงาน ปิดแล้ว)
"N"เปิดอยู่ สามารถแก้ไขข้อมูลได้

OT Flag Codes

CodeNameMultiplier
"01"OT 1.0 เท่า1.0x
"02"OT 1.5 เท่า1.5x
"03"OT 2.0 เท่า2.0x
"04"OT 3.0 เท่า3.0x
"05"OT 4.0 เท่า4.0x
"06"OT 5.0 เท่า5.0x
"07"OT 6.0 เท่า6.0x
"08"OT 7.0 เท่า7.0x

Time Adjust Flag Codes

CodeName
"01"แก้เวลาเข้า
"02"แก้เวลาออก
"03"แก้เวลาเข้า-ออก

leave_flag[].flag Values

ValueDescription
"D"ลาเป็นวัน
"H"ลาเป็นชั่วโมง

Approve Flag (ใน docs)

ValueDescription
"รออนุมัติ"เอกสารรออนุมัติ
"อนุมัติ"เอกสารอนุมัติแล้ว
"ไม่อนุมัติ"เอกสารไม่อนุมัติ

Error Responses

Employee Not Found (HTTP 404)

{ "code": 404, "message": "Employee not found with code: EMP001" }

Invalid Work Date Format (HTTP 400)

{ "code": 400, "message": "ไม่สำเร็จ", "errors": { "work_date": "Invalid date format. Expected YYYY-MM-DD" } }

Missing Required Parameters (HTTP 400)

{ "code": 400, "message": "ไม่สำเร็จ", "errors": { "employee_code": "employee_code is required", "work_date": "work_date is required" } }

Invalid Language Code (HTTP 400)

{ "code": 400, "message": "ไม่สำเร็จ", "errors": { "language_code": "Invalid language code. Supported: TH, EN" } }
HTTP StatusDescription
400พารามิเตอร์ไม่ถูกต้อง เช่น work_date ผิดรูปแบบ, ขาด required parameters, หรือ language_code ไม่รองรับ
401API Key ไม่ถูกต้องหรือไม่ได้ส่ง
404ไม่พบพนักงาน

Code Examples

curl -X GET "https://openapi.humansoft.co.th/api/v1/open-apis/salary/get-data-filter?path_action=daily_info&employee_code=EMP001&work_date=2026-02-18&language_code=TH" \ -H "Ocp-Apim-Subscription-Key: YOUR_API_KEY"

Notes

  • ระบบจะกรอง OT flags ตามสิทธิ์ของพนักงาน แสดงเฉพาะ OT ที่พนักงานใช้ได้
  • ระบบจะกรอง Leave flags ตามเพศของพนักงาน
  • ถ้าไม่มีข้อมูลกะ จะใช้ค่าเริ่มต้น: 08:00-17:00 พัก 12:00-13:00
  • ถ้าไม่มีรายการลงเวลา time จะเป็น array ว่าง []
  • ถ้าไม่มีเอกสาร docs จะเป็น object ที่มี array ว่างทุก key
  • กรณีกะข้ามวัน (เช่น กะดึก 22:00-06:00) ระบบจะคำนวณเอกสารลาที่เกี่ยวข้องให้ครอบคลุมทั้งช่วงกะ
  • ชื่อ labels ใน summary (เช่น “มาสาย”, “กลับก่อน”) สามารถปรับแต่งได้จากการตั้งค่าบริษัท

read_only_flag = "Y" หมายถึงไม่สามารถแก้ไขข้อมูลวันนี้ได้ เนื่องจากรอบเดือน, รอบ OT, หรือรอบเวลาทำงานปิดแล้ว ระบบจะใช้สถานะที่เข้มงวดที่สุด (ถ้ารอบใดรอบหนึ่งปิดแล้ว ก็จะเป็น "Y")


  • Daily In Month - ดูตารางเวลาทั้งเดือน
  • A Daily In Month - ดูข้อมูลวันทำงานพร้อมผลการคำนวณ
  • Current Month - ดูรอบเดือนปัจจุบัน เพื่อหา work_date ที่ถูกต้อง
Last updated on