ระบบแจ้งเตือนแบบ Multi-Channel สำหรับองค์กร
API RunningKittiwana Notify Platform เป็นระบบแจ้งเตือนภายในองค์กร พัฒนาและให้บริการโดย บริษัท สมาร์ทเพลส 304 ไอพี 3 จำกัด (ในเครือกลุ่มกิตติวนา) รองรับการส่งการแจ้งเตือนผ่านหลายช่องทาง
Push Notification ผ่าน Apple Push Notification service
node-apnส่งอีเมลผ่าน SMTP Server
nodemailerPush Notification ผ่าน Firebase Cloud Messaging
firebase-adminแจ้งเตือนผ่าน LINE Messaging API
@line/bot-sdkทุก endpoint (ยกเว้น /auth/*) ต้องมี JWT token หรือ API Key ใน header:
Authorization: Bearer <jwt_token> (Mobile App) Authorization: ApiKey <api_key> (External System)
| Method | Endpoint | Description |
|---|---|---|
| POST | /auth/register | ลงทะเบียน / เข้าสู่ระบบ |
| POST | /auth/tokenVerify | ตรวจสอบ JWT token |
| Method | Endpoint | Description |
|---|---|---|
| GET | /hrmsInfo | ดึงข้อมูลพนักงาน |
| POST | /hrmsInfo/create | สร้างข้อมูลพนักงาน |
| PUT | /hrmsInfo/update | อัปเดตข้อมูลพนักงาน |
| DELETE | /hrmsInfo/delete | ลบข้อมูลพนักงาน |
| Method | Endpoint | Description |
|---|---|---|
| GET | /hrmsNotificationLog | ดึง notification log |
| POST | /hrmsNotificationLog/create | สร้าง notification log |
| PUT | /hrmsNotificationLog/update | อัปเดต (mark read/unread) |
| PUT | /hrmsNotificationLog/update/setIsRead/all | Mark all as read/unread |
| DELETE | /hrmsNotificationLog/delete | ลบ notification log |
| Method | Endpoint | Description |
|---|---|---|
| GET | /hrmsStaticToken | ดึง device token |
| POST | /hrmsStaticToken/create | ลงทะเบียน device token |
| PUT | /hrmsStaticToken/update | อัปเดต device token |
| DELETE | /hrmsStaticToken/delete | ลบ device token |
| Method | Endpoint | Description |
|---|---|---|
| POST | /notify/send | ส่ง notification ทุก platform (Unified API) |
| POST | /ios/send | ส่ง iOS push notification |
| POST | /ios/badge | ตั้งค่า badge count |
| POST | /line/send | ส่ง LINE push message |
| POST | /line/flex | ส่ง LINE Flex Message |
| POST | /android/send | ส่ง Android push notification (FCM) |
| POST | /line/webhook/:appCode | LINE Webhook (ลงทะเบียน user อัตโนมัติ, no auth) |
| POST | /mail/send | ส่ง email |
| Method | Endpoint | Description |
|---|---|---|
| POST | /admin/application/register | ลงทะเบียน application + สร้าง API Key |
| POST | /admin/application/regenerateKey | สร้าง API Key ใหม่ |
| GET | /admin/application | ดูรายการ application ทั้งหมด |
{
"status": "SUCCESS",
"data": { ... }
}
// Error
{
"status": "ERROR",
"message": "Error description"
}
API จำกัดที่ 100 requests ต่อ 15 นาที ต่อ IP — หากเกินจะได้ HTTP 429:
{
"status": "ERROR",
"message": "Too many requests, please try again later"
}
แก้ bug ทั้งหมด, standardize response format, รวม hardcoded values
JWT expiration, resource-level auth, CORS whitelist, rate limiting, query whitelist, zod validation, request size limit
Composite index, pagination, orderBy, APNs caching, concurrent scheduled tasks, code cleanup
LINE Notification, Android FCM, Notification Management, Soft Delete, Multi-Notify API, External System API (API Key auth)
Health check, global error handler, .env.example — เหลือ: structured logging, Swagger, testing, PM2 config
WebSocket real-time, message queue (Bull/Redis), multi-tenant, analytics dashboard