ชั้นแอปพลิเคชัน (Application)

รูปแสดงการแลกเปลี่ยนข้อมูลชั้นแอปพลิเคชัน (Application)
ในส่วนผู้ให้บริการ (Provider Application)
แอปพลิเคชัน ควรมีคุณสมบัติดังต่อไปนี้
- RESTful API โดยพัฒนาให้สามารถเข้าถึงข้อมูลไปตามรูปแบบและโครงสร้างที่กำหนด นอกจากนี้ควรจะต้องมีคู่มือสำหรับวิธีการเข้าถึงข้อมูลต่าง ๆ
- รองรับกระบวนการยืนยันตัวตน (Authentication) เพื่อใช้ตรวจสอบผู้เข้าใช้บริการ รวมถึงการตรวจสอบสิทธิ์ในการเข้าถึงข้อมูล นอกจากนี้สามารถที่ใช้บริหารจัดการระยะเวลาการใช้งานได้ (Expire Management)
- การกระบวนการควบคุมการเข้าถึงข้อมูล (Access Control) สามารถส่วนเสริม เพื่อเพิ่มความปลอดภัย ยกตัวอย่างเช่น การกำหนดที่อยู่ของผู้ใช้บริการ สามารถที่จะเข้าใช้บริการได้ (White List) เป็นต้น
- การลงบันทึกล็อก (Logs) เป็นการเก็บบันทึกกิจกรรมต่าง ๆ ที่เกิดขึ้นที่เกี่ยวข้องกับแอปพลิเคชัน ตัวอย่างเช่น บันทึกล็อกการเข้าถึงข้อมูล (Access Log) และ บันทึกล็อกข้อผิดพลาดที่เกิดขึ้นจากระบบ (Error Log) เป็นต้น
- การติดตามประสิทธิภาพการให้บริการ (Monitor) เพื่อใช้เป็นข้อมูลในการปรุงประสิทธิภาพระบบให้บริการในการรักษาระดับการให้บริการ (Service Level Agreement: SLA)
ในส่วนผู้ขอใช้บริการ (Consumer Application)
แอปพลิเคชัน ควรมีคุณสมบัติดังต่อไปนี้
- REST Client คือเครื่องมือในส่วนของผู้ใช้บริการ โดยปกติแอปพลิเคชันจะถูกพัฒนาเพื่อให้สามารถทำงานได้ตามตารางเวลาที่กำหนด (Schedule) แอปพลิเคชันจะทำการเชื่อมต่อไปยังผู้ให้บริการข้อมูล เข้าถึงข้อมูลตามโครงสร้างและรูปแบบที่ผู้ให้บริการกำหนด ผู้พัฒนาจะต้องศึกษาและทำความเข้าใจจากคู่มือของผู้ให้บริการ
- API User Account คือข้อมูลเพื่อใช้ในการยืนยันตัวตนและสิทธิในการการเข้าถึงข้อมูล แอปพลิเคชันจะต้องใช้ข้อมูลส่วนนี้เพื่อเข้าถึงข้อมูล รายละเอียดของ API User Account เป็นไปตามข้อตกลงในฝั่งของผู้ให้บริการ ยกตัวอย่างเช่น ผู้ให้บริการได้กำหนดเป็น API Key สามารถใช้งานได้ในระยะเวลา 1 ปี เป็นต้น
- Logs คือส่วนของการบันทึกกิจกรรมต่าง ๆ ที่เกี่ยวข้องกับแอปพลิเคชัน มีประโยชน์ในการเป็นหลักฐานการเข้าใช้บริการ การเข้าถึงข้อมูลในช่วงเวลาต่างๆ เพื่อเป็นข้อมูลย้อนกลับ (Feedback) ในการปรับปรุงคุณภาพของการให้บริการ