🔌API และ Webhooks

เชื่อมต่อ LabSync กับ ทุกระบบ

REST API แบบ versioned และ webhooks ที่ลงนาม HMAC ช่วยให้คุณส่งข้อมูลการสอบเทียบไปยัง ERP ทริกเกอร์ workflow อัตโนมัติ และสร้างการเชื่อมต่อกำหนดเอง

webhook-receiver.ts
import crypto from "crypto";

export function verifyLabSync(
  body: string,
  header: string,
  secret: string
): boolean {
  const parts = Object.fromEntries(
    header.split(",").map(p => p.split("="))
  );
  const expected = crypto
    .createHmac("sha256", secret)
    .update(`${parts.t}.${body}`)
    .digest("hex");
  return crypto.timingSafeEqual(
    Buffer.from(`v1=${expected}`),
    Buffer.from(parts.v1 ? `v1=${parts.v1}` : "")
  );
}

// Express example
app.post("/webhook", (req, res) => {
  const sig = req.headers["x-labsync-signature"];
  if (!verifyLabSync(req.rawBody, sig, SECRET)) {
    return res.status(401).send("Invalid signature");
  }
  const { event, data } = req.body;
  // handle event...
  res.json({ ok: true });
});

เหตุการณ์ Webhook

สมัครรับเหตุการณ์ใดก็ได้ การส่งแต่ละครั้งรวมถึง payload ของ object ทั้งหมด

job.createdได้รับงานสอบเทียบใหม่
job.completedงานเสร็จ ใบรับรองพร้อม
certificate.issuedออกและลงนามใบรับรองแล้ว
invoice.issuedสร้างใบกำกับภาษีแล้ว
invoice.paidยืนยันการชำระเงินแล้ว
invoice.overdueใบกำกับภาษีเกินกำหนด
portal.slip_receivedลูกค้าอัปโหลดสลิปชำระเงิน
lab.approvedแล็บได้รับการยืนยันและอนุมัติ

โครงสร้างพื้นฐานการเชื่อมต่อระดับ Enterprise

REST API แบบ versioned

JSON API ที่สะอาดและคาดเดาได้ภายใต้ /api/v1/* ตรวจสอบสิทธิ์ด้วย API key ที่กำหนดขอบเขต read/write/admin จำกัดอัตราต่อ key มี OpenAPI schema

Webhooks ที่ลงนาม HMAC

ส่วนหัว t=timestamp,v1=signature แบบ Stripe บนทุกการส่ง ตรวจสอบความถูกต้องใน receiver ของคุณด้วยโค้ด 3 บรรทัด บันทึกการส่งพร้อมสถานะการลองใหม่ในแผงควบคุมผู้ดูแลระบบ

ลองใหม่แบบ Exponential backoff

การส่ง webhook ที่ล้มเหลวจะถูกลองใหม่อัตโนมัติ: 30 วิ, 5 น, 30 น, 2 ชม, 8 ชม, 24 ชม ล้มเหลวถาวรหลัง 6 ครั้ง — แจ้งเตือนผ่าน Sentry

API key ที่กำหนดขอบเขต

สร้าง API key หลายอันพร้อมขอบเขต read, write หรือ admin เพิกถอนได้ทันที แต่ละ key แสดงวันที่ใช้ล่าสุดและจำนวนคำขอ หมุนเวียนได้โดยไม่มีการหยุดทำงาน

รองรับ n8n + Zapier

เทมเพลต workflow n8n สำเร็จรูปสำหรับระบบอัตโนมัติทั่วไป: อีเมลสมัครใหม่ บทความใหม่ → โซเชียล อนุมัติแล็บ แจ้งเตือนหมดอายุ webhook trigger ทำงานร่วมกับแพลตฟอร์มอัตโนมัติใดก็ได้

Audit log การส่ง

การส่ง webhook ทุกครั้งถูกบันทึก — payload รหัสตอบกลับ เนื้อหาตอบกลับ latency และจำนวนการลองใหม่ ตรวจสอบการส่งใดก็ได้ในแผงควบคุมผู้ดูแลระบบเพื่อดีบักปัญหาการเชื่อมต่อ

พร้อมเชื่อมต่อแล้วหรือยัง?

API key พร้อมใช้งานในทุกแผนที่ชำระเงิน ทดลองใช้ฟรีรวมถึงการเข้าถึง API เต็มรูปแบบ 14 วัน

REST API และ Webhooks — เชื่อมต่อ LabSync | LabSync