เอกสาร API

ใช้ PulseAvesta ผ่าน JSON API ด้วย API key ของคุณ หรือเชื่อมกับผู้ช่วย AI ผ่าน MCP

การยืนยันตัวตน

แนบ API key ที่สร้างจากหน้าการตั้งค่าไปกับทุกคำขอ ผ่าน header X-API-Key หรือ Authorization: Bearer อย่างใดอย่างหนึ่ง

X-API-Key: pw_... Authorization: Bearer pw_...

คำขอที่ไม่มี key หรือใช้ key ที่ไม่ถูกต้อง/ถูกยกเลิก/หมดอายุ จะได้รับ 401 พร้อมข้อความผิดพลาดเป็น JSON

key แบบอ่านอย่างเดียวเรียก GET ได้ทุก endpoint แต่ POST และ DELETE จะได้รับ 403

Base URL: https://app.pulse.avesta.co.th/api

GET /api/sites

รายชื่อมอนิเตอร์ทั้งหมดของคุณ

curl https://app.pulse.avesta.co.th/api/sites \ -H "X-API-Key: pw_..."

POST /api/sites

เพิ่มมอนิเตอร์ใหม่ — ต้องมี name และ url เท่านั้น ฟิลด์อื่นมีค่าเริ่มต้นเหมือนฟอร์มบนเว็บ must_contain / must_not_contain (ข้อความที่หน้าต้องมีหรือห้ามมี สูงสุด 10 ข้อความ) ใช้ได้กับ check_type http เท่านั้น ส่วน domain_check_enabled (เตือนวันหมดอายุโดเมน) เปิดเป็นค่าเริ่มต้น

curl https://app.pulse.avesta.co.th/api/sites \ -H "X-API-Key: pw_..." \ -H "Content-Type: application/json" \ -d '{ "name": "My site", "url": "https://example.com", "check_type": "http", "check_interval_seconds": 300, "group_name": "Client A", "must_contain": ["Add to cart"], "must_not_contain": ["Error establishing a database connection"], "domain_check_enabled": true }'

GET /api/sites/{id}

ข้อมูลมอนิเตอร์รายการเดียว

curl https://app.pulse.avesta.co.th/api/sites/42 \ -H "X-API-Key: pw_..."

DELETE /api/sites/{id}

ลบมอนิเตอร์

curl -X DELETE https://app.pulse.avesta.co.th/api/sites/42 \ -H "X-API-Key: pw_..."

GET /api/sites/{id}/checks

ประวัติการตรวจสอบล่าสุด 200 รายการของมอนิเตอร์นั้น

curl https://app.pulse.avesta.co.th/api/sites/42/checks \ -H "X-API-Key: pw_..."

GET /api/sites/{id}/incidents

เหตุการณ์ขัดข้องของมอนิเตอร์นั้น

curl https://app.pulse.avesta.co.th/api/sites/42/incidents \ -H "X-API-Key: pw_..."

ฟิลด์ในคำตอบเป็นชื่อแบบ PascalCase (เช่น ID, Name, LastCheckedAt) เวลาเป็น RFC 3339 รายละเอียดทุกฟิลด์อยู่ใน OpenAPI spec

รูปแบบข้อผิดพลาด

คำขอที่ล้มเหลวตอบกลับเป็น JSON รูปแบบเดียวกันเสมอ

{"error": "site not found"}
  • 200 — สำเร็จ
  • 201 — เพิ่มมอนิเตอร์แล้ว (ตอบกลับเป็นมอนิเตอร์ที่สร้าง)
  • 204 — ลบแล้ว (ไม่มี body)
  • 400 — คำขอไม่ถูกต้อง เช่น JSON ผิดรูปแบบ หรือไม่มี name/url
  • 401 — ไม่มี key หรือ key ใช้ไม่ได้
  • 403 — key อ่านอย่างเดียว หรือจำนวนมอนิเตอร์เต็มโควตาแล้ว
  • 404 — ไม่พบมอนิเตอร์นี้ในบัญชีของคุณ
  • 409 — มีมอนิเตอร์ของเป้าหมายนี้อยู่แล้ว
  • 500 — ข้อผิดพลาดของระบบ

ผู้ช่วย AI (MCP)

เชื่อมกับ AI

Claude, ChatGPT, Cursor และเครื่องมือที่รองรับ Model Context Protocol ต่อกับ PulseAvesta ได้โดยตรงที่ที่อยู่นี้ แล้วถามสถานะเว็บ เหตุขัดข้อง หรือรายงาน SLA ในแชทได้เลย

https://app.pulse.avesta.co.th/mcp

Claude.ai และ ChatGPT เข้าสู่ระบบด้วย OAuth ได้เลยไม่ต้องใช้ key ส่วนเครื่องมืออื่นส่ง API key ผ่าน Authorization: Bearer