REST API ภาพรวม
พื้นฐาน
- API ได้รับการออกแบบให้สอดคล้องกับข้อกำหนด HTTP และ REST ตัวอย่างเช่น ใช้เมธอด Get สำหรับคำขอค้นหา และใช้เมธอด POST สำหรับคำขอส่งข้อมูล หากคำขอไม่ใช้เมธอด HTTP ที่สอดคล้อง จะมีการส่งกลับข้อผิดพลาด
- หากไม่มีคำอธิบายพิเศษ ค่าของพารามิเตอร์การเรียกควรถูกแปลงรหัสเป็น UTF-8 https://zh.wikipedia.org/wiki/%E7%99%BE%E5%88%86%E5%8F%B7%E7%BC%96%E7%A0%81
ศูนย์ข้อมูลและ URL ฐาน
เริ่มตั้งแต่วันที่ 19 มีนาคม 2568 นักพัฒนาที่เข้าถึง Engagelab Push API ใหม่จะต้องใช้โดเมนเนมต่อไปนี้ URL ฐานเดิมที่มีคำต่อท้าย .cc ยังสามารถใช้งานได้ แต่แนะนำให้นักพัฒนาเปลี่ยนไปใช้โดเมนเนมล่าสุด
ศูนย์ข้อมูล | URL ฐาน |
---|---|
สิงคโปร์ | https://webpushapi-sgp.engagelab.com |
ฮ่องกง | https://webpushapi-hk.engagelab.com |
เมื่อใช้ REST API จำเป็นต้องรวม URL ฐานที่เลือกกับเส้นทาง API เฉพาะเพื่อให้ได้จุดปลายทางที่สมบูรณ์
{base URL}/{เส้นทาง API}
โดยที่ {base URL} แทน URL ฐานของศูนย์ข้อมูลที่เลือก และ {เส้นทาง API} หมายถึงเส้นทางปลายทาง API เฉพาะ เช่น v4/devices/{registration_id}
ตัวอย่าง:
- สมมติว่าเลือกศูนย์ข้อมูลสิงคโปร์ที่มี URL ฐานเป็น
https://webpushapi-sgp.engagelab.com
- หากเป้าหมายคือการลบข้อมูลการลงทะเบียนสำหรับอุปกรณ์เฉพาะ และเส้นทาง API คือ
v4/devices/{registration_id}
แล้วจุดปลายทาง API ที่สมบูรณ์จะเป็น:
https://webpushapi-sgp.engagelab.com/v4/devices/{registration_id}
โดยที่ {registration_id}
แทนรหัสลงทะเบียนของอุปกรณ์เฉพาะ
การใช้วิธีนี้ คุณสามารถสร้าง URL จุดปลายทาง API ที่สมบูรณ์สำหรับการเข้าถึงศูนย์ข้อมูลต่างๆ ได้
วิธีการตรวจสอบสิทธิ์
Engagelab REST API ใช้ http://zh.wikipedia.org/wiki/HTTP%E5%9F%BA%E6%9C%AC%E8%AE%A4%E8%AF%81 วิธีการพื้นฐานคือเพิ่ม HTTP Header Authorization (ส่วนหัว):
Authorization: Basic base64_auth_string
อัลกอริทึมการสร้าง base64_auth_String คือ base64(appKey:masterSecret)
นั่นคือ เพิ่มเครื่องหมายโคลอนไปที่ appKey เพิ่มสตริงที่ประกอบด้วย masterSecret แล้วทำการแปลง base64
ไปที่การตั้งค่าแอปพลิเคชัน-หน้าข้อมูลแอปพลิเคชันเพื่อรับพารามิเตอร์ appKey และ masterSecret
!https://res.theengagelab.com/docs/yuque/0/2022/png/21780123/1672395832517-8309a83a-cbcb-4031-84f5-152c3c7c003a.png
ตัวอย่างการตรวจสอบสิทธิ์
หาก appKey ของคุณคือ "c96f42e0d2e662e45d035ab1" และ masterSecret คือ "df4d59e84eac2f9d53b36f12" เมื่อคุณเรียกใช้ Push API v4 ให้ใช้คำสั่ง curl ดังนี้:
curl --insecure -X POST -v https://webpushapi-sgp.engagelab.com/v4/push
-H "Content-Type: application/json"
-u "c96f42e0d2e662e45d035ab1:df4d59e84eac2f9d53b36f12"
-d '{"from":"push","to":"all","body":{"platform":"web","notification":{"alert":"Hi,MTPush !","web":{"alert":"Hi,MTPush !", "title":"web_push", "url":"http://www.google.com","extras":{"web-key1":"web-value1"}}}},"request_id":"12345678", "custom_args":"business info"}'
คำขอ HTTP คือ:
> POST /v4/push HTTP/1.1
> Authorization: Basic Yzk2ZjQyZTBkMmU2NjJlNDVkMDM1YWIxOmRmNGQ1OWU4NGVhYzJmOWQ1M2IzNmYxMg==