Mengenal RestfulAPI

Apa itu API?
API(Application Programming Interface) merupakan sekumpulan (method, fungsi atau URL endpoint) yang digunakan untuk mengembangkan aplikasi lebih dari satu platform yang berbeda. Lalu apa kegunaan API ini? dengan menggunakan API maka kita dapat mengunakan sumber daya dari aplikasi lain tanpa perlu mengetahui bagaimana aplikasi itu dibuat. 

REST (REpresentational State Transfer) merupakan standar arsitektur komunikasi berbasis web yang sering diterapkan dalam pengembangan layanan berbasis web. Umumnya menggunakan HTTP (Hypertext Transfer Protocol) sebagai protocol untuk komunikasi data. REST pertama kali diperkenalkan oleh Roy Fielding pada tahun 2000.

RESTful API.RESTful API / REST API merupakan implementasi dari API (Application Programming Interface).


 Berikut ilustrasi Rest API :



Terdapat 4 komponen utama dalam ResfulAPI, yaitu :

URL Design
RESTful API diakses menggunakan protokol HTTP. Penamaan dan struktur URL yang konsisten akan menghasilkan API yang baik dan mudah untuk dimengerti developer.  Contoh penamaan URL / endpoint yang baik adalah seperti berikut :
- /Produks
- /Produks/BajuAnak

HTTP Verbs
Setiap request yang dilakukan terdapat metode yang dipakai agar server mengerti apa yang sedang di request client, diantaranya yang umum dipakai adalah : 

GET
GET adalah metode HTTP Request yang paling simpel, metode ini digunakan untuk membaca atau mendapatkan data dari sumber.
Contoh :
GET /users : Mengembalikan daftar user
GET /users/1234 : Mengembalikan data user dengan ID 1234

POST
POST adalah metode HTTP Request yang digunakan untuk membuat / menambahkan data baru dengan menyisipkan data dalam body saat request dilakukan.
Contoh :
POST /Produk : Membuat data produk baru

PUT
PUT adalah metode HTTP Request yang biasanya digunakan untuk melakukan update data. 
Contoh :
PUT /Produk/BJ001 : Meng-update data produk dengan kode produk BJ001

DELETE
DELETE adalah metode HTTP Request yang digunakan untuk menghapus suatu data.
Contoh :
DELETE
/Produk/BJ001 : Menghapus data produk dengan kode produk BJ001

Response Status
HTTP response code adalah kode standarisasi dalam menginformasikan hasil request kepada client. 
 
berikut ini adalah response code yang biasa digunakan pada REST : 200 OK : Response code ini menandakan bahwa request yang dilakukan berhasil.

201 Created
Response code ini menandakan bahwa request yang dilakukan berhasil dan data telah dibuat. Kode ini digunakan untuk mengkonfirmasi berhasilnya request PUT atau POST.


400 Bad Request
Response code ini menandakan bahwa request yang dibuat salah atau data yang dikirim tidak ada.


401 Unauthorized
Response code ini menandakan bahwa request yang dibuat membutuhkan authentication sebelum mengakses resource.


404 Not Found
Response Code ini menandakan bahwa resource yang di dipanggil tidak ditemukan.


405 Method Not Allowed
Response code ini menandakan bahwa request endpoint ada tetapi metode HTTP yang digunakan tidak diizinkan.


409 Conflict
Response code ini menandakan bahwa request yang dibuat terdapat duplikasi, biasanya informasi yang dikirim sudah ada sebelumnya.


500 Internal Server Error
Response code ini menandakan bahwa request yang dilakukan terdapat kesalahan pada sisi server atau resource.

 
Response Format
Setiap request yang dilakukan client akan menerima data response dari server, response tersebut biasanya berupa data XML ataupun JSON.  
 
Sekian sedikit penjelasan singkat tentang RestFul API, semoga bermanfaat :D
 


Comments

Popular posts from this blog

PHP MySql CRUD Dengan Konsep MVC

IT Asset Management Dengan PHP MySQL

Laravel - Sistem Informasi Perpustakaan Sederhana Laravel