ภาพรวมของ REST API
ข้อจำกัดพื้นฐาน
- การออกแบบ API สอดคล้องกับข้อกำหนด HTTP และ REST ตัวอย่างเช่น การร้องขอข้อมูลใช้วิธี GET และการส่งข้อมูลใช้วิธี POST หากคำขอไม่สอดคล้องกับวิธี HTTP ที่เหมาะสม จะส่งคืนข้อผิดพลาด
- เว้นแต่จะระบุไว้เป็นอย่างอื่น ค่าพารามิเตอร์ของคำขอควรเข้ารหัสเป็น UTF-8 และเข้ารหัส URL
ข้อจำกัดอัตราการร้องขอ
API ของเรามีการจำกัดความถี่ในการเรียกใช้งานเพื่อให้มั่นใจถึงความเสถียรและความเป็นธรรมของบริการ ข้อจำกัด QPS (จำนวนคำขอต่อวินาที) ของแต่ละ AppKey มีดังนี้:
- ข้อจำกัดมาตรฐาน: สูงสุด 500 คำขอต่อวินาที
- ข้อจำกัดขั้นสูง: หากคุณเป็นสมาชิกแผนการชำระเงินของเรา และ AppKey ที่ชำระเงินของคุณต้องการ QPS ที่สูงกว่า โปรดติดต่อทีมธุรกิจของเรา: Sales@engagelab.com
ศูนย์ข้อมูลและ URL พื้นฐาน
ตั้งแต่วันที่ 19 มีนาคม 2025 เป็นต้นไป นักพัฒนาที่เริ่มใช้งาน Engagelab Push API จะต้องใช้โดเมนต่อไปนี้ URL พื้นฐานที่ลงท้ายด้วย .cc ยังคงใช้งานได้ แต่แนะนำให้นักพัฒนาเปลี่ยนไปใช้โดเมนล่าสุด
ศูนย์ข้อมูล | URL พื้นฐาน |
---|---|
สิงคโปร์ | https://pushapi-sgp.engagelab.com |
เวอร์จิเนีย, สหรัฐอเมริกา | https://pushapi-usva.engagelab.com |
แฟรงก์เฟิร์ต, เยอรมนี | https://pushapi-defra.engagelab.com |
ฮ่องกง | https://pushapi-hk.engagelab.com |
เมื่อใช้ REST API คุณต้องรวม URL พื้นฐานที่เลือกกับเส้นทาง API เฉพาะเพื่อให้ได้ endpoint ที่สมบูรณ์
{base URL}/{API path}
โดยที่ {base URL} หมายถึง URL พื้นฐานของศูนย์ข้อมูลที่เลือก และ {API path} หมายถึงเส้นทาง endpoint API เฉพาะ เช่น v4/devices/{registration_id}
ตัวอย่าง:
- สมมติว่าเลือกศูนย์ข้อมูลสิงคโปร์ URL พื้นฐานคือ
https://pushapi-sgp.engagelab.com
- หากเป้าหมายคือการลบข้อมูลการลงทะเบียนของอุปกรณ์เฉพาะ เส้นทาง API คือ
v4/devices/{registration_id}
endpoint API ที่สมบูรณ์คือ:
https://pushapi-sgp.engagelab.com/v4/devices/{registration_id}
โดยที่ {registration_id}
หมายถึง ID การลงทะเบียนของอุปกรณ์เฉพาะ
ด้วยวิธีนี้ คุณสามารถสร้าง URL endpoint API ที่สมบูรณ์สำหรับการเข้าถึงศูนย์ข้อมูลต่างๆ
วิธีการรับรองความถูกต้อง
Engagelab REST API ใช้การรับรองความถูกต้องแบบ HTTP Basic วิธีพื้นฐานคือการเพิ่ม Authorization ในส่วนหัวของ HTTP:
Authorization: Basic base64_auth_string
อัลกอริทึมการสร้าง base64_auth_string: base64(appKey:masterSecret)
ประกอบด้วยสตริงที่สร้างจาก appKey, เครื่องหมายโคลอน และ masterSecret และแปลงเป็น base64
ไปที่หน้า AppPush และรับข้อมูล AppKey และ Master Secret ในหน้าข้อมูล APP
ตัวอย่างการรับรองความถูกต้อง
appKey ของคุณคือ "c96f42e0d2e662e45d035ab1" และ masterSecret คือ "df4d59e84eac2f9d53b36f12" การเรียกใช้ Push API v4 ผ่านคำสั่ง curl ดังนี้:
curl --insecure -X POST -v https://pushapi-sgp.engagelab.com/v4/push
-H "Content-Type: application/json"
-u "c96f42e0d2e662e45d035ab1:df4d59e84eac2f9d53b36f12"
-d '{
"from": "push",
"to": "all",
"body": {
"platform": ["android","ios"],
"notification": {
"alert": "Hi,MTPush !",
"notification": {
"alert" :"Hello, Push!",
"android": {
"alert": "Hi, Push!",
"title": "Send to Android",
"builder_id": 1,
"extras": {
"newsid": 321
}
},
"ios": {
"alert": "Hi, MTPush!",
"sound": "default",
"badge": "+1",
"extras": {
"newsid": 321
}
}
}
}
},
"request_id": "12345678",
"custom_args": "business info"
}'
ตัวอย่างคำขอ HTTP:
> POST /v4/push HTTP/1.1
> Authorization: Basic Yzk2ZjQyZTBkMmU2NjJlNDVkMDM1YWIxOmRmNGQ1OWU4NGVhYzJmOWQ1M2IzNmYxMg==