Delete Warning Letter File
API สำหรับลบรูปภาพหรือเอกสารที่แนบกับจดหมายเตือน ครั้งละ 1 ไฟล์ ไฟล์ต้องเป็นของจดหมายเตือนที่ระบุเท่านั้น และลบได้เฉพาะจดหมายเตือนที่พนักงานยังไม่รับทราบ (approve_flag = 01)
Endpoint
POST /api/v1/open-apis/warning-letter/delete-fileสิทธิ์ที่ต้องการ: API Key ต้องมีสิทธิ์ ข้อมูลการยื่นเอกสาร (document:manage)
Request Body
ส่งแบบ application/json
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
warning_letter_id | string | Yes | ID ของจดหมายเตือน (Base64) | "MjAyNTExMjdENDU3M0M0MjE2Mzk=" |
warning_letter_file_id | string | Yes | ID ของไฟล์แนบที่ต้องการลบ (Base64) — ได้จาก images[] หรือ files[] ใน Get Detail | "MjAyNTExMjdBMUIyQzNENEU1RjY=" |
lang | string | No | ภาษาของ message: TH (ค่าเริ่มต้น) หรือ EN | "EN" |
Request Body Example
{
"warning_letter_id": "MjAyNTExMjdENDU3M0M0MjE2Mzk=",
"warning_letter_file_id": "MjAyNTExMjdBMUIyQzNENEU1RjY="
}Response Format
Success Response
คืนข้อมูลของจดหมายเตือนหลังลบไฟล์ ในรูปแบบเดียวกับ Get Detail
{
"code": 200,
"message": "ลบไฟล์แนบสำเร็จ",
"payload": {
"warning_letter_id": "20251127D4573C421639",
"employee_code": "EMP001",
"employee_name": "สมชาย ใจดี",
"employee_name_en": "Somchai Jaidee",
"warning_letter_dt": "2026-10-15",
"warning_letter_flag_lv": "04",
"warning_letter_flag_name": "หนังสือตักเตือนด้วยวาจา",
"warning_letter_flag_name_en": "Letter of Verbal Reprimand",
"warning_letter_desc": "มาสายเกิน 3 ครั้งในเดือน",
"approve_flag": "01",
"approve_flag_name": "แจ้งพนักงานแล้ว",
"approve_flag_name_en": "Informed",
"created": "2026-10-15 09:12:44",
"last_upd": "2026-10-15 09:12:44",
"images": [],
"files": [
{
"warning_letter_file_id": "20251127F6E5D4C3B2A1",
"file_name": "หนังสือเตือน.pdf",
"mime_type": "application/pdf",
"file_size": 92311,
"url": "https://cdn.humansoft.co.th/.../file/9b8c7d6e5f4a3b2c.pdf"
}
]
}
}หากลบรายการไฟล์สำเร็จแต่ลบไฟล์ออกจากที่จัดเก็บไฟล์ไม่สำเร็จ จะได้ HTTP 200 พร้อม warnings เช่น "an attachment could not be removed from storage" — ไฟล์นั้นไม่อยู่ในจดหมายเตือนแล้ว ไม่ต้องส่งคำขอซ้ำ
Error Response
ข้อมูลไม่ผ่านการตรวจสอบ (422)
{
"code": 422,
"message": "การตรวจสอบข้อมูลล้มเหลว",
"errors": ["'warning_letter_file_id' is required"]
}ข้อความใน errors | สาเหตุ |
|---|---|
'warning_letter_id' is required / 'warning_letter_file_id' is required | ไม่ได้ส่ง ID |
'<parameter>' is invalid (expected the base64 of an alphanumeric id) | ID ไม่ใช่ Base64 ของ ID ที่ถูกต้อง |
ไม่พบจดหมายเตือน (404)
{
"code": 404,
"message": "ไม่พบจดหมายเตือน"
}ไม่พบไฟล์แนบ (404) — ไม่มีไฟล์นี้ หรือไฟล์ไม่ได้อยู่ในจดหมายเตือนที่ระบุ
{
"code": 404,
"message": "ไม่พบไฟล์แนบ"
}พนักงานรับทราบแล้ว (409)
{
"code": 409,
"message": "พนักงานรับทราบจดหมายเตือนนี้แล้ว ไม่สามารถแก้ไขหรือลบได้"
}| HTTP Status | Description |
|---|---|
400 | เกิดข้อผิดพลาดระหว่างลบ (message: กระบวนการล้มเหลว) |
403 | API Key ไม่มีสิทธิ์ document:manage |
404 | ไม่พบจดหมายเตือน หรือไม่พบไฟล์แนบในจดหมายเตือนนั้น |
409 | พนักงานรับทราบจดหมายเตือนแล้ว ลบไฟล์ไม่ได้ |
422 | Parameter ไม่ผ่านการตรวจสอบ |
500 | เกิดข้อผิดพลาดที่เซิร์ฟเวอร์ (message: เกิดข้อผิดพลาดที่เซิร์ฟเวอร์) |
Code Examples
cURL
curl -X POST "https://openapi.humansoft.co.th/api/v1/open-apis/warning-letter/delete-file" \
-H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"warning_letter_id": "MjAyNTExMjdENDU3M0M0MjE2Mzk=",
"warning_letter_file_id": "MjAyNTExMjdBMUIyQzNENEU1RjY="
}'Notes
- การลบไฟล์ไม่ส่งแจ้งเตือนถึงพนักงาน และไม่เปลี่ยนการ์ดจดหมายเตือนใน News Feed
- การลบไฟล์ไม่เปลี่ยนค่า
last_updของจดหมายเตือน — หากระบบของคุณซิงก์ข้อมูลตามlast_updให้ตรวจรายการไฟล์จาก Get Detail ด้วย - การลบไฟล์ไม่สามารถกู้คืนได้ — หากต้องการแนบไฟล์ใหม่ให้ใช้ Update
warning_letter_file_idใน Get Detail เป็นค่า raw ต้อง encode เป็น Base64 ก่อนส่ง
Related APIs
- Get Detail - หา
warning_letter_file_idของไฟล์ที่ต้องการลบ - Update - แนบไฟล์ใหม่
- Delete - ลบจดหมายเตือนทั้งใบพร้อมไฟล์แนบทั้งหมด
Last updated on