REST API adalah cara umum untuk merancang web API berdasarkan resource seperti pengguna, soal, atau pesanan. Setiap resource memiliki URL, dan metode HTTP seperti GET, POST, PATCH, dan DELETE memberi tahu server apa yang ingin dilakukan klien.
REST adalah singkatan dari Representational State Transfer. Dalam praktiknya, klien mengirim request HTTP, server mengembalikan representasi dari sebuah resource, dan setiap request seharusnya dapat dipahami secara mandiri. Banyak REST API mengembalikan JSON, tetapi JSON saja tidak otomatis membuat sebuah API menjadi RESTful.
Arti REST API: Pikirkan dalam Bentuk Resource
Cara tercepat untuk memahami REST adalah dengan memikirkan kata benda, bukan kata kerja.
Jika sistem Anda memiliki soal, siswa, dan percobaan, semuanya bisa menjadi resource. API yang berorientasi pada resource cenderung menggunakan URL seperti /api/problems/42 atau /api/attempts/9001.
Metode HTTP kemudian memberi tahu jenis operasi yang sedang terjadi:
GETmembaca resourcePOSTmembuat resource baruPUTmengganti resourcePATCHmemperbarui sebagian resourceDELETEmenghapus resource
Pemisahan inilah yang membuat REST mudah dipahami sekilas. URL menunjukkan apa yang sedang Anda kerjakan. Metodenya menunjukkan apa yang ingin Anda lakukan.
Cara Kerja Request REST API
Dalam alur yang umum, browser, aplikasi seluler, atau layanan lain mengirim request ke server. Request tersebut mencakup URL, metode HTTP, header opsional, dan kadang-kadang body.
Server membaca request, menjalankan aksi, lalu mengembalikan response. Response itu biasanya mencakup kode status seperti 200 OK, 201 Created, atau 404 Not Found, ditambah data yang menjelaskan hasilnya.
Salah satu kondisi penting adalah statelessness. Dalam REST, setiap request seharusnya memuat konteks yang dibutuhkan untuk request tersebut. Ini bukan berarti server tidak menyimpan data sama sekali. Artinya, server seharusnya tidak memerlukan status percakapan tersembunyi dari request sebelumnya untuk memahami request saat ini.
Contoh REST API: Aplikasi Latihan Matematika
Misalkan sebuah aplikasi latihan matematika menyimpan soal aljabar dan percobaan jawaban siswa.
Untuk membaca soal , klien dapat mengirim:
Butuh bantuan mengerjakan soal?
Unggah pertanyaanmu dan dapatkan solusi terverifikasi langkah demi langkah dalam hitungan detik.
Buka GPAI Solver →