<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="id">
	<id>https://cbtlmsts.my.id/wikits/index.php?action=history&amp;feed=atom&amp;title=Konsep_dan_prinsip_RESTful_API</id>
	<title>Konsep dan prinsip RESTful API - Riwayat revisi</title>
	<link rel="self" type="application/atom+xml" href="https://cbtlmsts.my.id/wikits/index.php?action=history&amp;feed=atom&amp;title=Konsep_dan_prinsip_RESTful_API"/>
	<link rel="alternate" type="text/html" href="https://cbtlmsts.my.id/wikits/index.php?title=Konsep_dan_prinsip_RESTful_API&amp;action=history"/>
	<updated>2026-08-29T14:40:28Z</updated>
	<subtitle>Riwayat revisi halaman ini di wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://cbtlmsts.my.id/wikits/index.php?title=Konsep_dan_prinsip_RESTful_API&amp;diff=46&amp;oldid=prev</id>
		<title>Admin: ←Membuat halaman berisi &#039;==Konsep dan Prinsip RESTful API== * &#039;&#039;&#039;Platform&#039;&#039;&#039;: Ubuntu 24.04   * &#039;&#039;&#039;Target&#039;&#039;&#039;: Mahasiswa atau pemula di bidang pemrograman web/API   * &#039;&#039;&#039;Durasi&#039;&#039;&#039;: 2–3 jam  ==✅ Tujuan Pembelajaran==  Setelah menyelesaikan modul ini, peserta akan dapat: * Memahami konsep dasar dan prinsip RESTful API. * Mengetahui struktur HTTP request/response. * Mencoba membuat dan mengakses RESTful API secara lokal menggunakan Ubuntu 24.04. * Menguji endpoint API menggunakan `curl` d...&#039;</title>
		<link rel="alternate" type="text/html" href="https://cbtlmsts.my.id/wikits/index.php?title=Konsep_dan_prinsip_RESTful_API&amp;diff=46&amp;oldid=prev"/>
		<updated>2025-05-10T14:20:05Z</updated>

		<summary type="html">&lt;p&gt;←Membuat halaman berisi &amp;#039;==Konsep dan Prinsip RESTful API== * &amp;#039;&amp;#039;&amp;#039;Platform&amp;#039;&amp;#039;&amp;#039;: Ubuntu 24.04   * &amp;#039;&amp;#039;&amp;#039;Target&amp;#039;&amp;#039;&amp;#039;: Mahasiswa atau pemula di bidang pemrograman web/API   * &amp;#039;&amp;#039;&amp;#039;Durasi&amp;#039;&amp;#039;&amp;#039;: 2–3 jam  ==✅ Tujuan Pembelajaran==  Setelah menyelesaikan modul ini, peserta akan dapat: * Memahami konsep dasar dan prinsip RESTful API. * Mengetahui struktur HTTP request/response. * Mencoba membuat dan mengakses RESTful API secara lokal menggunakan Ubuntu 24.04. * Menguji endpoint API menggunakan `curl` d...&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Halaman baru&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Konsep dan Prinsip RESTful API==&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Platform&amp;#039;&amp;#039;&amp;#039;: Ubuntu 24.04  &lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Target&amp;#039;&amp;#039;&amp;#039;: Mahasiswa atau pemula di bidang pemrograman web/API  &lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Durasi&amp;#039;&amp;#039;&amp;#039;: 2–3 jam&lt;br /&gt;
&lt;br /&gt;
==✅ Tujuan Pembelajaran==&lt;br /&gt;
&lt;br /&gt;
Setelah menyelesaikan modul ini, peserta akan dapat:&lt;br /&gt;
* Memahami konsep dasar dan prinsip RESTful API.&lt;br /&gt;
* Mengetahui struktur HTTP request/response.&lt;br /&gt;
* Mencoba membuat dan mengakses RESTful API secara lokal menggunakan Ubuntu 24.04.&lt;br /&gt;
* Menguji endpoint API menggunakan `curl` dan Postman.&lt;br /&gt;
&lt;br /&gt;
==🧠 1. Pengantar RESTful API==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Apa itu REST?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
REST (Representational State Transfer) adalah arsitektur yang digunakan untuk membuat layanan web (API) yang ringan, cepat, dan skalabel.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Apa itu RESTful API?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
RESTful API adalah implementasi dari REST yang menggunakan protokol HTTP untuk komunikasi antar sistem.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ciri-ciri RESTful API:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Stateless&amp;#039;&amp;#039;&amp;#039;: Setiap request berdiri sendiri, tidak menyimpan state.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Client-Server&amp;#039;&amp;#039;&amp;#039;: Pemisahan antara client dan server.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Cacheable&amp;#039;&amp;#039;&amp;#039;: Response bisa disimpan di cache.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Uniform Interface&amp;#039;&amp;#039;&amp;#039;: Konvensi endpoint yang konsisten.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Layered System&amp;#039;&amp;#039;&amp;#039;: Bisa memiliki banyak layer (misalnya: proxy, cache).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==🔧 2. Tools yang Digunakan (Ubuntu 24.04)==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Tool !! Keterangan&lt;br /&gt;
|-&lt;br /&gt;
| `curl` || Untuk testing API via terminal&lt;br /&gt;
|-&lt;br /&gt;
| `Python3 + Flask` || Untuk membuat REST API sederhana&lt;br /&gt;
|-&lt;br /&gt;
| `Postman` (opsional) || GUI untuk uji coba endpoint&lt;br /&gt;
|-&lt;br /&gt;
| `pip` || Manajer paket Python&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==⚙️ 3. Instalasi (Ubuntu 24.04)==&lt;br /&gt;
&lt;br /&gt;
 sudo apt update&lt;br /&gt;
 sudo apt install python3 python3-pip -y&lt;br /&gt;
 pip install flask&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==🏗️ 4. Contoh RESTful API Sederhana dengan Flask==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Struktur dasar API:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
 # simpan sebagai app.py&lt;br /&gt;
 from flask import Flask, jsonify, request&lt;br /&gt;
 &lt;br /&gt;
 app = Flask(__name__)&lt;br /&gt;
 &lt;br /&gt;
 # Data dummy&lt;br /&gt;
 books = [&lt;br /&gt;
     {&amp;quot;id&amp;quot;: 1, &amp;quot;title&amp;quot;: &amp;quot;1984&amp;quot;, &amp;quot;author&amp;quot;: &amp;quot;George Orwell&amp;quot;},&lt;br /&gt;
     {&amp;quot;id&amp;quot;: 2, &amp;quot;title&amp;quot;: &amp;quot;Animal Farm&amp;quot;, &amp;quot;author&amp;quot;: &amp;quot;George Orwell&amp;quot;}&lt;br /&gt;
 ]&lt;br /&gt;
 &lt;br /&gt;
 # Endpoint GET (ambil semua buku)&lt;br /&gt;
 @app.route(&amp;#039;/books&amp;#039;, methods=[&amp;#039;GET&amp;#039;])&lt;br /&gt;
 def get_books():&lt;br /&gt;
     return jsonify(books) &lt;br /&gt;
 &lt;br /&gt;
 # Endpoint POST (tambah buku)&lt;br /&gt;
 @app.route(&amp;#039;/books&amp;#039;, methods=[&amp;#039;POST&amp;#039;])&lt;br /&gt;
 def add_book():&lt;br /&gt;
     new_book = request.get_json()&lt;br /&gt;
     books.append(new_book)&lt;br /&gt;
     return jsonify(new_book), 201&lt;br /&gt;
 &lt;br /&gt;
 if __name__ == &amp;#039;__main__&amp;#039;:&lt;br /&gt;
     app.run(debug=True)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Jalankan API:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
 python3 app.py&lt;br /&gt;
&lt;br /&gt;
API akan aktif di: `http://127.0.0.1:5000`&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==🧪 5. Uji API dengan `curl`==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;GET:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
 curl http://127.0.0.1:5000/books&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;POST:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
 curl -X POST -H &amp;quot;Content-Type: application/json&amp;quot; \&lt;br /&gt;
      -d &amp;#039;{&amp;quot;id&amp;quot;:3,&amp;quot;title&amp;quot;:&amp;quot;Brave New World&amp;quot;,&amp;quot;author&amp;quot;:&amp;quot;Aldous Huxley&amp;quot;}&amp;#039; \&lt;br /&gt;
      http://127.0.0.1:5000/books&lt;br /&gt;
&lt;br /&gt;
==🔄 6. Metode HTTP dan Kegunaannya==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Metode !! Keterangan&lt;br /&gt;
|-&lt;br /&gt;
| GET    || Mengambil data&lt;br /&gt;
|-&lt;br /&gt;
| POST   || Menambah data&lt;br /&gt;
|-&lt;br /&gt;
| PUT    || Mengubah data&lt;br /&gt;
|-&lt;br /&gt;
| DELETE || Menghapus data&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==🧩 7. Prinsip Desain RESTful Endpoint==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Resource !! Endpoint !! HTTP Method !! Aksi&lt;br /&gt;
|-&lt;br /&gt;
| Buku     || /books   || GET         || Ambil semua buku&lt;br /&gt;
|-&lt;br /&gt;
| Buku     || /books   || POST        || Tambah buku baru&lt;br /&gt;
|-&lt;br /&gt;
| Buku     || /books/1 || GET         || Ambil buku id 1&lt;br /&gt;
|-&lt;br /&gt;
| Buku     || /books/1 || PUT         || Update buku id 1&lt;br /&gt;
|-&lt;br /&gt;
| Buku     || /books/1 || DELETE      || Hapus buku id 1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==🧠 8. Catatan Tambahan==&lt;br /&gt;
&lt;br /&gt;
* Gunakan `Postman` untuk pengalaman GUI.&lt;br /&gt;
* REST bukan satu-satunya jenis API (lihat juga: GraphQL, gRPC).&lt;br /&gt;
* Untuk deployment, bisa pakai `gunicorn`, `nginx`, atau `Docker`.&lt;br /&gt;
&lt;br /&gt;
==🎯 Penutup==&lt;br /&gt;
&lt;br /&gt;
RESTful API adalah dasar penting dalam pengembangan web dan sistem backend modern. Dengan memahami konsep ini di Ubuntu 24.04, kamu bisa mulai membangun sistem terintegrasi antar aplikasi secara efisien.&lt;br /&gt;
&lt;br /&gt;
==Pranala Menarik==&lt;br /&gt;
&lt;br /&gt;
* [[Web Programming]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>