- รักษาความสม่ำเสมอ: URL/เฮดเดอร์/การยืนยันตัวตน/รหัสสถานะ..
- ใช้รูปแบบวันที่ ISO8601 UTC
- ยกเว้นการยืนยันตัวตนเฉพาะ Public Endpoint เท่านั้น ส่วนที่เหลือทั้งหมดต้องยืนยันตัวตน
- จัดเตรียม Endpoint สำหรับ health check
- ทำ API versioning
- ใช้การยืนยันตัวตนด้วย API key
- ใช้ HTTP status code และเมธอดอย่างเหมาะสม
- ใช้ชื่อที่เรียบง่ายและอธิบายตัวเองได้สำหรับแต่ละ Endpoint
- ใช้มาตรฐานการตอบกลับข้อผิดพลาด
- คืนค่า resource ที่ถูกสร้างจาก POST
- ใช้ PATCH แทน PUT
- ระบุให้เฉพาะเจาะจงที่สุดเท่าที่เป็นไปได้
- ใช้ pagination
- ออกแบบให้แต่ละ resource ขยายได้ (เช่น ให้ query param อย่าง
expand เพื่อให้สามารถคืนข้อมูลเพิ่มเติมได้)
2 ความคิดเห็น
ช่วงนี้เห็นเนื้อหาเกี่ยวกับเรื่องนี้จากหลายที่ เลยอยากแนะนำ "Web API Design: The Missing Link" นะครับ/ค่ะ ด้วยชื่อและปกอาจทำให้เข้าใจผิดว่าเป็นหนังสือแนวเปรียบเทียบอินเทอร์เน็ตแบบอ่านง่าย แต่จริง ๆ แล้วเป็นหนังสือดีมากที่สะท้อนให้เห็นถึงมุมมองด้านการออกแบบ API อันเฉียบคมของผู้เขียน ซึ่งทำงานด้านการออกแบบ API เป็นอาชีพครับ/ค่ะ
แนวทาง REST API ของ Microsoft
แนวทาง REST API ของ Stackoverflow