สำหรับนักพัฒนา

เพิ่ม scheduling ให้ผลิตภัณฑ์ของคุณ

ค้นหาเวลาว่าง สร้างการจอง และรับ Webhook ที่มีลายเซ็นผ่าน API ฝั่งเซิร์ฟเวอร์ของ Slotkit

แม้ใช้ API อย่างเดียว Slotkit ยังตรวจ Google Calendar และเขียน booking events ลงปฏิทิน

วิธีผสานระบบ

Slotkit ให้ความสามารถ scheduling เดียวกันผ่านหน้า Hosted Booking และ API ฝั่งเซิร์ฟเวอร์แบบมีเวอร์ชัน นี่คือสองทางเข้าในผลิตภัณฑ์เดียว ไม่ใช่คนละรุ่น

UI จองแบบกำหนดเอง

แสดงเวลาว่างในผลิตภัณฑ์แล้วส่งการจองผ่าน backend

อย่าวาง Tenant API Keys ในโค้ดเบราว์เซอร์

แอปพลิเคชันเดิม

เพิ่มการสร้าง เลื่อน และยกเลิกการจองในบริการเดิม

ทำตามข้อกำหนด key scopes, idempotency และ concurrency

เวิร์กโฟลว์ภายนอก

รับ lifecycle Webhook เพื่ออัปเดตระบบของคุณ

Slotkit ไม่มีตัวสร้างเวิร์กโฟลว์ทั่วไป

Hosted พร้อม API

ใช้หน้าจองและผสานทรัพยากร scheduling เดียวกันเมื่อจำเป็น

กฎ Hosted access และการอนุญาต API เป็นคนละขอบเขต

ขั้นตอนผสานระบบขั้นต่ำ

  1. 01

    ค้นหาเวลาว่าง

    ถามว่า Slot ใดจองได้สำหรับ Event Type ณ เวลาหนึ่ง

  2. 02

    สร้างการจองที่เลือก

    ส่ง Slot พร้อม idempotency key ที่ไม่ซ้ำและข้อมูลผู้เข้าชม

  3. 03

    ประมวลผล lifecycle event

    รับ Webhook lifecycle ของ Booking และ Calendar ที่มีลายเซ็น

Slot ที่แสดงไม่ได้ถูกถือไว้ อาจไม่ว่างก่อน create call ยืนยัน ต้องจัดการ conflict response

POST /v1/bookings

Authorization: Bearer sk_live_2f81c4…
Idempotency-Key: 0f4a9d12-6c33-4b7e-9a10-8ee2c5d17b40

{
  "event_type_id": "evt_3n8xqk2r",
  "start_at": "2026-09-14T02:00:00.000Z",
  "guest": {
    "name": "Mei Lin",
    "email": "[email protected]",
    "timezone": "Asia/Taipei"
  }
}

201 Created

{
  "data": {
    "id": "bkg_7pd4m1vs",
    "status": "confirmed",
    "version": 1,
    "source": "api",
    "start_at": "2026-09-14T02:00:00.000Z",
    "end_at": "2026-09-14T02:30:00.000Z",
    "calendar": { "status": "pending", "error_code": null },
    "meeting": { "type": "google_meet", "join_url": null }
  },
  "meta": { "request_id": "req_a71c9f04" }
}

Booking ถูก confirmed ใน response เดียวกับที่รายงาน Calendar event เป็น pending การยืนยันไม่รอให้เขียน Calendar event เสร็จ

สิ่งที่ API มีให้

  • REST contract /v1 แบบมีเวอร์ชันและ API key ฝั่งเซิร์ฟเวอร์ที่มี scope คงที่
  • ค้นหา Availability และสร้าง เลื่อน ยกเลิกการจอง
  • รายการ สร้าง ยกเลิก และออก Booking Invitation ใหม่สำหรับหน้าจำกัดคำเชิญ
  • Metadata ที่มีขอบเขตสำหรับบริบทของแอป ไม่เปลี่ยนความหมายของ scheduling หรือ authorization
  • TypeScript SDK ฝั่งเซิร์ฟเวอร์ที่สร้างตาม contract ที่ใช้งานจริง
  • Webhook ที่มีลายเซ็นสำหรับ booking.created, booking.rescheduled, booking.cancelled, calendar.created และ calendar.failed

v1 contract เสถียรและดูได้จาก API reference ส่วน TypeScript SDK ทำถึง 1.0.0 แล้วแต่ยังไม่เผยแพร่สาธารณะ

สิ่งที่ integration ต้องเตรียมรับ

ส่งคำขอซ้ำอย่างปลอดภัย
Mutation idempotency ป้องกันการสร้าง booking ซ้ำจาก retry ที่รับแล้ว แต่ conflict และคำขอที่เนื้อหาต่างกันยังต้องจัดการชัดเจน
Booking กับผลข้างเคียง
Calendar synchronization และ Webhook delivery ทำตามสถานะที่ commit แล้ว ความล่าช้าไม่ยกเลิก booking
การพึ่งพา Availability
การตรวจ Availability อาจ fail closed เมื่อ Google Calendar ใช้ไม่ได้และไม่มี snapshot ล่าสุดที่ใช้ได้
การจองพร้อมกัน
Slot อาจไม่ว่างระหว่างค้นหาและส่งคำขอ integration ต้องจัดการ response นี้
รูปแบบการส่ง
Webhook อาจ retry และมาถึงมากกว่าหนึ่งครั้ง ตรวจลายเซ็นและ deduplicate ด้วย event identity
การกู้คืน
จำนวน retry มีขอบเขต การ sync หรือ delivery ที่ล้มเหลวอาจต้องใช้การกู้คืนที่ได้รับอนุญาต
ตรวจสอบ API reference →

ข้อมูลรับรองและการแยกขอบเขต

  • เก็บ API key ในสภาพแวดล้อมเซิร์ฟเวอร์เท่านั้น ไม่อยู่ในโค้ดเบราว์เซอร์
  • Scope คงที่และใช้สิทธิ์น้อยที่สุด ขอเฉพาะสิ่งที่ integration ใช้
  • Webhook delivery มีลายเซ็น ตรวจสอบก่อนเชื่อถือ event
  • แต่ละ workspace เห็นเฉพาะข้อมูลของตน การเข้าถึงข้าม workspace ตรวจซ้ำที่เซิร์ฟเวอร์
วิธีที่ Slotkit ปกป้องข้อมูลรับรอง →

แหล่งข้อมูล

ใช้ API reference แบบโต้ตอบหรือดาวน์โหลด OpenAPI เพื่อประเมิน v1 contract การเผยแพร่ TypeScript SDK ยังไม่พร้อม

คำถาม

ก่อน integration

ใช้ Slotkit โดยไม่ใช้หน้า Hosted Booking ได้ไหม

ได้ อ่านและจอง Event Type กับ Availability เดียวกันระหว่างเซิร์ฟเวอร์ด้วย API key ที่มี scope

API credential ต้องอยู่ที่ไหน

เฉพาะฝั่งเซิร์ฟเวอร์ อย่าฝัง Tenant API key ในโค้ดเบราว์เซอร์ ให้เรียกผ่าน backend ของคุณ

API ยังต้องใช้ Google Calendar ไหม

ต้องใช้ เพราะ Availability และ booking events พึ่งพา Google Calendar แม้ใช้ API อย่างเดียว

Webhook ส่งเพียงครั้งเดียวไหม

ไม่ การส่งอาจ retry และมาซ้ำ ตรวจลายเซ็นและ deduplicate ด้วย event identity

เบราว์เซอร์เรียก API โดยตรงได้ไหม

ไม่ได้เมื่อใช้ API key ให้ UI ส่งผ่าน backend ของแอปที่เก็บข้อมูลรับรอง

ผู้เข้าชมใช้หน้า Hosted ขณะที่ integration ใช้ API ได้ไหม

ได้ กฎ Hosted access และ API authorization แยกกัน แต่ใช้ทรัพยากร scheduling เดียวกัน

อ่านเอกสารและตรวจสอบ contract

ใช้หน้าจองแทน →