Skip to Content
🚀 Welcome to Humansoft Open API Documentation

Update Employee Workday

แก้ไขรูปแบบวันทำงาน (Workday Pattern) ของพนักงาน รวมถึงการตั้งค่ากะการทำงานในแต่ละวันของสัปดาห์

ใช้ API นี้เพื่อเปลี่ยนกะการทำงานในแต่ละวัน หรือกำหนดวันหยุดใหม่

Endpoint

POST /api/v1/open-apis/holiday/update-employee-workday

Request Parameters

ParameterTypeRequiredDescriptionExample
employee_codestringYesรหัสพนักงานEMP001
work_cycle_formatstringYesรูปแบบวันทำงาน (Work Cycle Format ID)WF001
day_listsarrayYesรายการกะการทำงานในแต่ละวันดูตัวอย่างด้านล่าง

day_lists Structure

[ { "day": "Mon", "id": "WC001", "code": "A" }, { "day": "Tue", "id": "WC001", "code": "A" }, { "day": "Wed", "id": "WC001", "code": "A" }, { "day": "Thu", "id": "WC001", "code": "A" }, { "day": "Fri", "id": "WC001", "code": "A" }, { "day": "Sat", "id": "OFF", "code": "OFF" }, { "day": "Sun", "id": "OFF", "code": "OFF" } ]
FieldTypeRequiredDescription
daystringYesรหัสวัน (Mon, Tue, Wed, Thu, Fri, Sat, Sun)
idstringYesWork Cycle ID หรือ OFF สำหรับวันหยุด
codestringNoรหัสกะการทำงาน (เช่น A, B, C)

Request Body Example

{ "employee_code": "EMP001", "work_cycle_format": "WF001", "day_lists": [ {"day": "Mon", "id": "WC001", "code": "A"}, {"day": "Tue", "id": "WC001", "code": "A"}, {"day": "Wed", "id": "WC001", "code": "A"}, {"day": "Thu", "id": "WC001", "code": "A"}, {"day": "Fri", "id": "WC001", "code": "A"}, {"day": "Sat", "id": "OFF", "code": "OFF"}, {"day": "Sun", "id": "OFF", "code": "OFF"} ] }

Response Format

Success Response (HTTP 200)

{ "code": 200, "message": "สำเร็จ", "payload": { "employee_id": "RU1QMDE=", "employee_code": "EMP001", "employee_name": "สมชาย ใจดี", "employee_name_en": "Somchai Jaidee", "holiday_format": "WF001", "holiday_apply_config": "01", "holiday_day_json": "{\"Mon\":\"WC001\",\"Tue\":\"WC001\",\"Wed\":\"WC001\",\"Thu\":\"WC001\",\"Fri\":\"WC001\",\"Sat\":\"OFF\",\"Sun\":\"OFF\"}", "holiday_lists": { "Mon": "A : 08:00-17:00", "Tue": "A : 08:00-17:00", "Wed": "A : 08:00-17:00", "Thu": "A : 08:00-17:00", "Fri": "A : 08:00-17:00", "Sat": "วันหยุด", "Sun": "วันหยุด" }, "updated": "2026-01-13 10:30:00" } }

Error Response - Validation Failed (HTTP 400)

{ "code": 400, "message": "Validation failed", "errors": [ "Missing required parameter: 'work_cycle_format'", "Missing 'day' in day_lists[0]" ] }

Code Examples

curl -X POST "https://openapi.humansoft.co.th/api/v1/open-apis/holiday/update-employee-workday" \ -H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "employee_code": "EMP001", "work_cycle_format": "WF001", "day_lists": [ { "day": "Mon", "id": "WC001", "code": "A" }, { "day": "Tue", "id": "WC001", "code": "A" }, { "day": "Wed", "id": "WC001", "code": "A" }, { "day": "Thu", "id": "WC001", "code": "A" }, { "day": "Fri", "id": "WC001", "code": "A" }, { "day": "Sat", "id": "OFF", "code": "OFF" }, { "day": "Sun", "id": "OFF", "code": "OFF" } ] }'

Common Workday Patterns

รูปแบบ 1: ทำงานจันทร์-ศุกร์ หยุดเสาร์-อาทิตย์

{ "day_lists": [ { "day": "Mon", "id": "WC001", "code": "A" }, { "day": "Tue", "id": "WC001", "code": "A" }, { "day": "Wed", "id": "WC001", "code": "A" }, { "day": "Thu", "id": "WC001", "code": "A" }, { "day": "Fri", "id": "WC001", "code": "A" }, { "day": "Sat", "id": "OFF", "code": "OFF" }, { "day": "Sun", "id": "OFF", "code": "OFF" } ] }

รูปแบบ 2: ทำงาน 6 วัน หยุดวันอาทิตย์

{ "day_lists": [ { "day": "Mon", "id": "WC001", "code": "A" }, { "day": "Tue", "id": "WC001", "code": "A" }, { "day": "Wed", "id": "WC001", "code": "A" }, { "day": "Thu", "id": "WC001", "code": "A" }, { "day": "Fri", "id": "WC001", "code": "A" }, { "day": "Sat", "id": "WC002", "code": "B" }, { "day": "Sun", "id": "OFF", "code": "OFF" } ] }

รูปแบบ 3: กะผลัดเปลี่ยน

{ "day_lists": [ { "day": "Mon", "id": "WC001", "code": "A" }, { "day": "Tue", "id": "WC002", "code": "B" }, { "day": "Wed", "id": "WC001", "code": "A" }, { "day": "Thu", "id": "WC002", "code": "B" }, { "day": "Fri", "id": "WC001", "code": "A" }, { "day": "Sat", "id": "OFF", "code": "OFF" }, { "day": "Sun", "id": "OFF", "code": "OFF" } ] }

Validation Rules

ParameterValidationError Message
employee_codeต้องระบุและเป็น stringMissing required parameter: 'employee_code'
work_cycle_formatต้องระบุและเป็น stringMissing required parameter: 'work_cycle_format'
day_listsต้องเป็น array และไม่ว่าง'day_lists' must be an array
day_lists[].dayต้องระบุในทุก entryMissing 'day' in day_lists[X]
day_lists[].idต้องระบุในทุก entryMissing 'id' in day_lists[X]

Important Notes

  • การเปลี่ยนแปลงจะมีผลกับการคำนวณเวลาทำงานและการลงเวลา
  • ถ้าเปลี่ยน work_cycle_format ข้อมูลวันทำงานเดิมจะถูกล้าง
  • ถ้า work_cycle_format เดิมเหมือนกัน ระบบจะรักษาข้อมูลวันที่ไม่ได้ส่งมาไว้

Error Handling

ErrorCauseSolution
Missing required parameter: 'employee_code'ไม่ได้ส่ง employee_codeตรวจสอบ request body
Missing required parameter: 'work_cycle_format'ไม่ได้ส่ง work_cycle_formatตรวจสอบ request body
'day_lists' must be an arrayday_lists ไม่ใช่ arrayส่งเป็น array ของ objects
Missing 'day' in day_lists[X]ไม่ได้ระบุ day ใน entryเพิ่ม day ใน entry ที่ระบุ
Employee not found with code: XXXไม่พบพนักงานตรวจสอบ employee_code
Last updated on