ภาพรวม REST API (Overview)
สำหรับแอปพลิเคชันส่วนใหญ่, การส่งข้อมูล Real-time มักจะมีต้นทางมาจาก "Backend ของคุณ" (เช่น มีออร์เดอร์ใหม่เข้าฐานข้อมูล, มีการโอนเงินสำเร็จ, โพสต์ถูกอนุมัติ ฯลฯ)
การจะดึงข้อมูลพวกนี้ไปพ่นให้ Client ทุกคนที่ต่อ WebSocket อยู่ได้เห็น สิ่งที่คุณต้องทำมีแค่อย่างเดียว คือการยิง REST API เข้าหาประตูทางเข้าหลังบ้านของ RawPush
1. จุดเชื่อมต่อหลัก (Base URL)
REST API ทั้งหมดของ RawPush จะถูกเตรียมพร้อมรับข้อมูลที่ Base URL:
https://api.rawpush.com/api/v1ข้อสังเกต: การยิงผ่าน REST API ใช้
https://(ผ่านกระบวนการ HTTP ธรรมดา) แตกต่างจากฝั่ง Client ที่ต้องต่อสาย WebSocket ค้างไว้ด้วยwss://
2. การยืนยันสิทธิ์ในการใช้ API (API Authentication)
API ของ RawPush ทุกตัวถูก protect ด้วย authentication การจะเรียกใช้งานได้ Backend ของคุณต้องแนบ Secret Key (sk_...) ของโปรเจกต์ในทุก request เสมอ
วิธีการแนบคีย์: แนบมาในส่วน Headers ของแอปพลิเคชันหรือโค้ดภาษาที่คุณยิง HTTP Request ในชื่อคีย์ X-Api-Key
ตัวอย่าง (cURL):
curl -X POST https://api.rawpush.com/api/v1/publish \
-H "X-Api-Key: sk_ของคุณ" \
-H "Content-Type: application/json"⛔️ ข้อห้าม
คุณไม่สามารถใช้ Public Key (pk_...) กับ REST API สายนี้นะครับ ถ้าลองพยายาม ระบบจะตีกลับและเตือนด้วยสถานะ Error 401 Unauthorized ทันที
และ ห้าม เรียก Endpoint API นี้จากหน้าบ้าน (Frontend) เด็ดขาด เพราะจะทำให้ผู้ไม่ประสงค์ดี ก๊อปปี้ Secret Key ของคุณไปใช้สั่งระบบได้ฟรี ๆ
3. รูปแบบข้อมูลที่ส่ง-รับ (Content Type)
- ระบบบังคับส่งและรอรับค่าข้อมูลในรูปแบบโครงสร้าง JSON ทั้งสิ้น
- ฉะนั้นเวลาเขียนโค้ดยิงเข้า (POST/PUT/GET) อย่าลืมแนบ Header
Content-Type: application/jsonเสมอ
ในหัวข้อถัดไป เราจะมาเจาะลึก Endpoint ตัวเอกของงานนี้ คือ POST /publish ว่าจะบรรทุกโครงสร้างแบบไหนเข้าไปพ่นได้บ้าง
