A RESTful API(Representational State Transfer) ialah sejenis seni bina dan protokol untuk mereka bentuk dan mengurus antara muka pengaturcaraan aplikasi(API) dalam sistem teragih. RESTful API dibina di atas prinsip asas seni REST bina, kaedah yang diterangkan oleh Roy Fielding dalam disertasinya pada tahun 2000.
Ciri-ciri utama RESTful API termasuk:
Akses berasaskan alamat
Setiap sumber diwakili oleh URL(Uniform Resource Locator), membenarkan sistem berkomunikasi melalui permintaan HTTP seperti GET, POST, PUT dan DELETE.
Akses tanpa kewarganegaraan
Setiap permintaan daripada klien mengandungi maklumat yang mencukupi untuk pelayan memahami permintaan tanpa bergantung pada maklumat keadaan sebelumnya. Pelayan tidak menyimpan maklumat tentang keadaan klien antara permintaan.
Penggunaan kaedah HTTP
RESTful API menggunakan kaedah HTTP(GET, POST, PUT, DELETE) untuk menentukan tujuan setiap permintaan. Contohnya, gunakan GET untuk mendapatkan maklumat, POST untuk mencipta data baharu, PUT untuk mengemas kini dan PADAM untuk mengalih keluar.
Penggunaan jenis media
Data dihantar melalui rangkaian menggunakan format seperti JSON, XML atau format tersuai lain. Setiap permintaan perlu menentukan format data yang dikehendaki.
Pengenalpastian sumber
Sumber dikenal pasti melalui URL unik, membolehkan pelanggan mengakses sumber menggunakan pengecam berasaskan laluan.
Boleh dicache
Permintaan dan respons daripada a RESTful API boleh disimpan dalam memori pelayan atau pelayan proksi untuk mengoptimumkan prestasi.
Sistem berlapis
Seni REST bina membenarkan penambahan lapisan perantara seperti pengimbang beban atau pelayan proksi untuk meningkatkan kebolehskalaan dan kebolehurusan.
API RESTful digunakan secara meluas dalam pembangunan aplikasi web dan mudah alih, membolehkan komunikasi yang cekap dan perkongsian data antara aplikasi. Perkhidmatan web utama seperti Facebook, Twitter dan Google juga menggunakan seni bina RESTful untuk menyediakan API untuk pembangun.