Application Program Interface / API
Application Program Interface (API) merupakan perantara antara sistem aplikasi yang berbeda berupa antarmuka. API tak hanya dalam bentuk Web Service, bisa juga berupa SDK (Software Development Kit) ataupun lainnya.
RESTful API
RESTful merupakan sebutan untuk web services yang menerapkan arsitektur REST. Ia bisa disebut juga sebagai API (application program interface) karena digunakan untuk menjembatani antara sistem yang berbeda (client dan server).
Berikut beberapa sifat pada REST API:
Client-Server
Merupakan hal yang paling mendasar dalam membangun REST API. Server harus bisa merespon permintaan yang dilakukan client, baik itu ketika berhasil ataupun gagal. Komunikasi client dan server dilakukan melalui protokol HTTP.
Stateless
REST API tidak boleh menyimpan keadaan (state) apapun terkait client. Seluruh state harus tetap disimpan di client. Artinya, tidak ada session di REST API. Permintaan yang dilakukan client harus mengandung informasi yang jelas. Jangan berharap RESTful API akan menyimpan informasi dari permintaan sebelumnya untuk digunakan di permintaan selanjutnya.
Cacheable
Agar dapat merespon permintaan dengan cepat, sebaiknya REST API menerapkan prinsip cache. Sehingga setiap permintaan tidak melulu mengambil dari database.
Layered
Ketika REST API server memiliki arsitektur yang kompleks, client seharusnya tidak perlu tahu bagaimana server melayaninya.
Dikutip dari : https://www.dicoding.com/blog/apa-itu-rest-web-service/
EmoticonEmoticon