รับแจ้งเตือนอัตโนมัติด้วย Webhooks

ให้ Uppic ยิง HTTP POST ไปยังระบบของคุณเมื่อมีเหตุการณ์สำคัญ พร้อมลายเซ็น HMAC

Webhook คือการที่ Uppic ส่ง HTTP POST ไปยัง URL ของคุณโดยอัตโนมัติเมื่อเกิดเหตุการณ์ในบัญชี — ไม่ต้อง polling API

Event ที่รองรับ

  • image.uploaded — มีรูปอัปโหลดสำเร็จในบัญชี
  • optimization.completed — งานบีบอัดเสร็จสมบูรณ์
  • optimization.failed — งานบีบอัดล้มเหลว
  • subscription.changed — แพ็กเกจของบัญชีเปลี่ยนแปลง

ตั้งค่า Endpoint

  1. 1ไปที่ Dashboard → Webhooks แล้วเพิ่ม endpoint ใหม่ (ต้องเป็น URL สาธารณะแบบ HTTPS)
  2. 2เลือก event ที่ต้องการรับ
  3. 3บันทึก secret ของ endpoint ไว้ใช้ตรวจลายเซ็น
ตัวอย่าง payload
{
  "event": "optimization.completed",
  "createdAt": "2026-08-07T12:00:00.000Z",
  "data": { "jobId": "…", "fileCount": 3 }
}

ตรวจลายเซ็น (สำคัญ)

ทุกคำขอมี header X-Uppic-Event (ชื่อ event) และ X-Uppic-Signature ซึ่งเป็น HMAC-SHA256 ของ body ทั้งก้อน เซ็นด้วย secret ของ endpoint — ควรตรวจทุกครั้งก่อนประมวลผล

ตรวจลายเซ็นด้วย Node.js
import { createHmac, timingSafeEqual } from "node:crypto";

function verifyWebhook(rawBody, signatureHeader, secret) {
  const expected = createHmac("sha256", secret)
    .update(rawBody)
    .digest("hex");
  return timingSafeEqual(
    Buffer.from(expected),
    Buffer.from(signatureHeader)
  );
}

การส่งซ้ำและการปิดอัตโนมัติ

  • ตอบกลับ HTTP 2xx ภายใน 10 วินาทีเพื่อยืนยันว่ารับสำเร็จ
  • หากล้มเหลว ระบบ retry สูงสุด 5 ครั้งแบบ exponential backoff
  • Endpoint ที่ล้มเหลวติดต่อกัน 10 ครั้งจะถูกปิดอัตโนมัติ — เปิดใหม่ได้จากแดชบอร์ด
บทความนี้ช่วยได้ไหม?

บทความที่เกี่ยวข้อง

ยังต้องการความช่วยเหลือ?

ทีมงานพร้อมตอบคำถามของคุณโดยตรง

ติดต่อเรา