Sebelum mendesain API lebih jauh, mari kita pelajari sedikit teorinya mengenai API.
Secara sederhana API adalah protokol komunikasi yang disediakan sebuah software agar bisa diakses oleh software lainnya.
RESTFull API Architecture
Untuk membuat API yang mudah digunakan, kita perlu mengikuti arsitektur yang umum yaitu RESTFull Architecture.
- Pisahkan API berdasarkan logical resources. Resorces adalah object dengan data yang terasosiasi. Contoh: tpurs, users,review, shoppingcart dan lainnya.
- Ter-expose, dapat diakses via URL. Contoh: https://www.example.com/tours
- Menggunakan HTTP methods (POST, GET, PUT, PATCH dan DELETE), contoh: GET https://www.example.com/tours, GET https://www.example.com/tours/1
- Mengembalikan data dalam format JSON.
- Stateless, state harus dihandle oleh client, server tidak perlu mengetahui state sebelumnya. Artinya setiap request harus memilki informasi yang cukup untuk diproses oleh server. Contoh yang salah adalah GET /tours/nextPage, contoh yang benar adalah GET /tours/page/6