Saat Anda membangun frontend, melakukan debug klien, atau mempelajari pustaka HTTP baru, Anda sering membutuhkan titik akhir yang mengembalikan JSON yang tampak realistis tanpa harus membuat backend. API dummy memberikan hal itu kepada Anda: layanan publik, gratis, dan selalu aktif yang dapat Anda panggil sekarang juga. Panduan ini mencantumkan API dummy publik terbaik, menunjukkan cara memanggilnya, dan menjelaskan kapan harus berhenti meminjam data orang lain dan membangun API REST palsu Anda sendiri. Jika Anda menginginkan pengantar yang lebih mendalam tentang lanskap API publik, panduan MDN untuk menggunakan Fetch API cocok dengan semua hal di bawah ini.
Apa sebenarnya API dummy itu
API dummy adalah layanan yang di-host yang mengembalikan JSON realistis yang sudah jadi untuk jenis sumber daya umum: pengguna, postingan, produk, keranjang, tugas. Anda tidak perlu mendaftar, tidak perlu menghosting apa pun, dan tidak perlu khawatir merusak data produksi. Sebagian besar menerima GET, POST, PUT, PATCH, dan DELETE, tetapi operasi tulis biasanya dipalsukan. Server mengembalikan payload Anda dengan ID dan berpura-pura telah menyimpannya, padahal tidak ada yang benar-benar tersimpan.
Itu adalah ciri utama yang perlu dipahami sebelum Anda mengandalkannya. API dummy sangat cocok untuk prototipe yang banyak membaca dan untuk membuktikan bahwa kode permintaan Anda berfungsi. Ini tidak cocok begitu Anda membutuhkan perilaku stateful, bentuk data Anda sendiri, atau kondisi kesalahan kustom.
API dummy dan palsu gratis terbaik untuk diuji
Berikut adalah API publik yang patut diketahui. Semuanya gratis dan tidak memerlukan pengaturan backend di pihak Anda.
JSONPlaceholder
JSONPlaceholder adalah yang klasik. Ini melayani enam sumber daya terkait: 100 postingan, 500 komentar, 100 album, 5.000 foto, 200 tugas, dan 10 pengguna. Hubungan antar data adalah nyata, jadi sebuah postingan memiliki komentar dan sebuah album memiliki foto, yang membuatnya bagus untuk menguji pengambilan bertingkat.
curl https://jsonplaceholder.typicode.com/posts/1
Anda akan mendapatkan satu objek postingan. Permintaan tulis diterima tetapi tidak disimpan, jadi `POST /posts` mengembalikan `id: 101` palsu setiap saat.
DummyJSON
DummyJSON lebih luas cakupannya. Ini menyediakan produk, keranjang, pengguna, postingan, komentar, kutipan, tugas, dan resep, ditambah alur otentikasi yang memberi Anda token. Jika Anda menguji UI keranjang belanja atau layar login, ini adalah pilihan yang tepat.
curl https://dummyjson.com/products/1
Titik akhir otentikasi memungkinkan Anda POST nama pengguna dan kata sandi serta menerima JWT, yang berguna untuk berlatih penyimpanan token dan permintaan terotentikasi tanpa harus menghubungkan penyedia identitas nyata.
reqres.in
reqres.in berfokus pada siklus hidup permintaan dan respons: daftar pengguna, pengguna tunggal, daftar, login, respons tertunda. Ini dibangun untuk mendemokan paginasi dan alur otentikasi. Satu hal yang perlu diketahui: tingkat gratis sekarang mengharapkan header kunci API. Kirim `x-api-key: reqres-free-v1` dengan permintaan Anda, atau Anda akan mendapatkan 401.
curl https://reqres.in/api/users/2 -H "x-api-key: reqres-free-v1"
Di mana masing-masing cocok
| API Dummy | Terbaik untuk | Alur Otentikasi | Persistensi Tulis |
|---|---|---|---|
| JSONPlaceholder | Pembacaan bertingkat, data gaya blog | Tidak | Dipalsukan, tidak disimpan |
| DummyJSON | E-commerce, keranjang, login | Ya (token) | Dipalsukan, tidak disimpan |
| reqres.in | Paginasi, demo daftar/login | Header kunci API | Dipalsukan, tidak disimpan |
Jika Anda menginginkan katalog opsi yang lebih luas selain ketiga ini, ringkasan API publik untuk pengujian mencakup pilihan yang lebih spesialis, dan daftar API publik gratis untuk pengembang berguna ketika Anda membutuhkan data bertema seperti cuaca atau mata uang.
Cara memanggil API dummy di kode Anda
Memanggil salah satunya sama dengan memanggil titik akhir HTTP lainnya. Berikut adalah contoh `fetch` sederhana dalam JavaScript yang membaca pengguna dan kemudian memposting yang baru.
// Baca
const res = await fetch('https://dummyjson.com/users/1');
const user = await res.json();
console.log(user.firstName);
// Tulis (dikembalikan, tidak disimpan secara permanen)
const created = await fetch('https://dummyjson.com/users/add', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ firstName: 'Ada', lastName: 'Lovelace' }),
});
console.log(await created.json()); // mengembalikan objek dengan id palsu
Dalam Python dengan `requests`, bentuknya sama singkatnya.
import requests
r = requests.get("https://jsonplaceholder.typicode.com/todos/1")
print(r.json())
Masukkan salah satu dari ini ke dalam file pengujian dan Anda memiliki integrasi yang berfungsi untuk diperiksa. Jika Anda membutuhkan nilai yang dapat dipercaya untuk asersi tersebut, panduan tentang membuat data pengujian API yang realistis menunjukkan cara menghasilkan nama, email, dan stempel waktu yang terlihat seperti lalu lintas produksi, bukan `test123`.
Kapan API dummy publik tidak lagi cukup
API dummy publik sangat bagus sampai kebutuhan Anda menjadi spesifik. Anda akan menemui kendala dalam beberapa situasi umum:
- Bentuk data Anda tidak cocok. Aplikasi Anda mengharapkan bidang `subscription_tier` dan objek `billing` bertingkat. JSONPlaceholder memberi Anda `posts` dan `albums`. Anda tidak dapat mengubah skema mereka agar sesuai dengan skema Anda.
- Anda membutuhkan status. Keranjang nyata diperbarui saat Anda menambahkan item. API dummy melupakan POST Anda saat dikembalikan.
- Anda membutuhkan kegagalan yang terkontrol. Menguji bagaimana UI Anda menangani 429, 200 yang lambat, atau badan yang salah bentuk sulit dilakukan ketika layanan publik selalu berperilaku baik.
- Anda membangun sebelum backend ada. Tim frontend dan backend sering memulai pada waktu yang sama. Anda membutuhkan titik akhir yang sesuai dengan kontrak yang disepakati hari ini, bukan kapan pun API dikirim.
Pada titik itu Anda tidak membutuhkan API pinjaman. Anda membutuhkan API palsu Anda sendiri yang mengembalikan bentuk Anda, sesuai permintaan, dengan respons yang Anda kontrol. Itu adalah mock API yang dibangun untuk pengujian, dan di sinilah Apidog berperan.
Cara membangun API palsu Anda sendiri dengan Apidog
Apidog adalah platform API yang menggabungkan desain, pengujian, debugging, dan mocking di satu tempat. Mocking-nya didorong oleh skema, sehingga membaca struktur titik akhir Anda dan menghasilkan data palsu yang realistis secara otomatis menggunakan aturan Faker bawaan. Anda menentukan bentuknya sekali, dan setiap permintaan mengembalikan nilai baru yang masuk akal.

Berikut adalah versi singkat alur kerjanya.
- Buat atau impor titik akhir. Definisikan API baru di Apidog, atau impor file OpenAPI atau Swagger yang sudah ada. Apidog membaca skema secara langsung.
- Biarkan mock cerdas mengisi data. Untuk bidang bernama `email`, Apidog mengembalikan email. Untuk `createdAt`, ia mengembalikan stempel waktu. Untuk `price`, sebuah angka. Anda dapat menyetel aturan ini per bidang, sehingga bidang `country` mengembalikan nama negara asli alih-alih string acak.
- Akses URL mock lokal. Apidog membuat server mock dan memberi Anda URL untuk setiap titik akhir. Panggil dari frontend Anda, pengujian Anda, atau curl, persis seperti API dummy publik, kecuali responsnya cocok dengan kontrak Anda.
- Tambahkan respons bersyarat dan kesalahan. Konfigurasikan mock untuk mengembalikan 500, 404, atau respons yang tertunda berdasarkan permintaan. Sekarang Anda dapat menguji jalur yang tidak berhasil yang tidak pernah bisa Anda reproduksi dengan layanan publik.
Karena mock dihasilkan dari spesifikasi Anda, itu tetap sinkron saat desain Anda berkembang. Ubah bidang, dan mock mencerminkannya. Jika Anda ingin pandangan yang lebih luas tentang menghasilkan mock langsung dari spesifikasi, panduan tentang menghasilkan data mock dari skema OpenAPI membahas lebih dalam tentang sisi Faker.
API dummy publik vs. mock Apidog Anda sendiri
| Kebutuhan | API dummy publik | Mock Apidog |
|---|---|---|
| Data hanya-baca cepat | Sangat bagus | Sangat bagus |
| Bentuk data Anda yang tepat | Tidak | Ya |
| Respons kesalahan dan penundaan kustom | Tidak | Ya |
| Sesuai dengan kontrak OpenAPI Anda | Tidak | Ya |
| Waktu penyiapan | Nol | Beberapa menit |
Keduanya tidak ada yang secara mutlak lebih baik. API dummy publik menang ketika Anda hanya membutuhkan JSON dalam lima detik. Mock Apidog Anda sendiri menang saat kebenaran terhadap kontrak Anda yang sebenarnya penting. Sebagian besar tim menggunakan keduanya: yang publik untuk eksperimen sekali pakai, mock proyek untuk semua yang dikirimkan.
Pertanyaan yang Sering Diajukan
Apakah API dummy sama dengan mock API?
Mereka tumpang tindih tetapi tidak identik. API dummy biasanya berarti layanan publik bersama dengan data sampel tetap, seperti JSONPlaceholder. Mock API adalah API yang Anda definisikan dan kendalikan, mengembalikan bentuk dan perilaku Anda sendiri. API dummy adalah salah satu jenis mock yang sudah di-host oleh orang lain. Jika Anda ingin perbedaan dijelaskan, lihat penjelasan tentang apa itu mock API.
Apakah API palsu gratis aman digunakan dengan data nyata?
Tidak. Jangan pernah mengirim data pengguna nyata, rahasia, atau token ke API dummy publik. Perlakukan semua yang Anda POST sebagai tercatat dan terlihat. Gunakan hanya dengan nilai pengujian sekali pakai. Ketika Anda membutuhkan privasi atau persistensi, host mock Anda sendiri.
Apakah API dummy menyimpan data yang saya kirim?
Hampir tidak pernah. JSONPlaceholder, DummyJSON, dan reqres.in semuanya menerima permintaan tulis dan mengembalikan hasil dengan ID yang dihasilkan, tetapi tidak ada yang tersimpan secara permanen. Segarkan dan catatan "dibuat" Anda hilang. Jika Anda membutuhkan status yang tetap, Anda membutuhkan mock stateful atau backend sungguhan.
Dapatkah saya membangun API palsu tanpa menulis kode apa pun?
Ya. Dengan Apidog Anda mendefinisikan bentuk titik akhir dan membiarkan mocking cerdas menghasilkan data, tidak diperlukan kode server. Anda juga dapat mengimpor file OpenAPI dan mendapatkan titik akhir mock yang berfungsi dalam hitungan menit.
Kesimpulan
API dummy publik seperti JSONPlaceholder, DummyJSON, dan reqres.in adalah cara tercepat untuk mendapatkan JSON realistis untuk prototipe dan pembelajaran. Mereka tidak membutuhkan biaya dan tidak memerlukan penyiapan. Saat Anda membutuhkan bentuk data Anda sendiri, status nyata, atau respons kesalahan yang terkontrol, bangun API palsu yang benar-benar Anda miliki.
Apidog memungkinkan Anda melakukan hal itu: mengimpor spesifikasi Anda, mendapatkan data mock berbasis skema, dan memanggil titik akhir Anda sendiri dalam hitungan menit. Unduh Apidog dan ubah kontrak API Anda berikutnya menjadi mock yang berfungsi sebelum sebaris kode backend pun ada. Lihat bagaimana ini sesuai dengan alur kerja pengujian Anda di Apidog.
