Cara Mock API di Apidog Tanpa Coding

Pelajari cara melakukan mock API di Apidog tanpa kode menggunakan Smart Mock: secara otomatis menghasilkan respons realistis dari skema Anda, salin URL mock, dan mencegah tebakan yang keliru.

Ashley Innocent

Ashley Innocent

15 July 2026

Cara Mock API di Apidog Tanpa Coding

Apidog untuk Perusahaan

Penerapan On-Premises

SSO & RBAC

Sesuai SOC 2

Jelajahi Apidog Enterprise

Tim frontend Anda terhambat. Backend untuk GET /users dan GET /orders belum siap, tetapi UI membutuhkan data realistis untuk merender daftar, melakukan paginasi, dan menangani status kosong. Solusi lama adalah menulis file JSON palsu secara manual dan menyajikannya, lalu terus memperbaikinya setiap kali ada perubahan pada kolom. Pekerjaan itu membosankan, dan hampir seketika tidak sinkron dengan API yang sebenarnya.

Ada cara yang lebih cepat. Jika Anda sudah memiliki spesifikasi API, Apidog dapat menghasilkan mock yang berfungsi langsung dari skema endpoint, tanpa konfigurasi dan tanpa kode. Fitur ini disebut Smart Mock, dan ia membaca nama serta tipe kolom Anda untuk menghasilkan data yang terlihat nyata: kolom name mengembalikan nama yang masuk akal, kolom email mengembalikan email yang masuk akal. Panduan ini akan memandu Anda dalam melakukan mocking dua endpoint e-commerce secara end-to-end, menunjukkan tempat URL mock berada, menjelaskan urutan prioritas yang menentukan respons mana yang menang, dan membahas apa yang harus dilakukan ketika Smart Mock salah menebak. Jika Anda ingin pemahaman yang lebih luas tentang konsep ini terlebih dahulu, ikhtisar kami tentang apa itu mocking API dan bagaimana cara kerjanya memberikan gambaran, dan situs JSON Schema menjelaskan model batasan yang dihormati oleh Smart Mock.

tombol

Apa yang dilakukan Smart Mock dan mengapa itu menghemat waktu Anda

Mesin mock Apidog dapat melakukan lima hal, sesuai dokumentasi. Ini dapat mengembalikan data yang dihasilkan secara otomatis dari spesifikasi API Anda, yaitu Smart Mock. Ini dapat mengembalikan contoh respons yang Anda definisikan dalam spesifikasi. Ini dapat mengembalikan respons kustom yang ditentukan. Ini dapat mengembalikan respons yang berbeda berdasarkan parameter permintaan, yang merupakan mocking kondisional. Dan ini dapat mengembalikan respons yang nilainya terkait dengan permintaan melalui skrip mock.

Smart Mock adalah anggota tanpa konfigurasi dari keluarga tersebut, dan dibangun di dalam Apidog bersama dengan alat desain, debug, dan pengujian. Anda tidak perlu mendefinisikan badan contoh, dan Anda tidak perlu menulis aturan. Selama sebuah endpoint memiliki skema respons yang ditentukan, Smart Mock membaca skema tersebut dan mengisi setiap kolom dengan nilai-nilai realistis. Ini bertindak sebagai fallback otomatis: setiap endpoint yang tidak memiliki contoh yang telah ditentukan tetap mengembalikan sesuatu yang masuk akal, sehingga tidak ada permintaan yang kembali kosong.

Untuk frontend yang terhambat, itulah kuncinya. Anda mengimpor atau mendesain API Anda sekali, dan setiap endpoint menjadi mock langsung pada saat yang sama. Ketika skema berubah, mock juga berubah bersamanya, karena keduanya membaca dari satu sumber.

Sebelum Anda mulai: satu-satunya persyaratan

Smart Mock membutuhkan respons yang ditentukan pada endpoint. Itulah satu-satunya prasyarat. Jika Anda mendesain API di Apidog, tambahkan skema respons di bawah definisi respons endpoint. Jika Anda mengimpor file OpenAPI, skema respons biasanya ikut disertakan. Tanpa respons yang ditentukan, tidak ada yang bisa dibaca oleh mesin, dan mock tidak mengembalikan apa pun yang berguna.

Anda juga akan memerlukan klien desktop Apidog jika Anda berencana menggunakan Local Mock, karena berjalan di mesin Anda sendiri dan tidak tersedia di Apidog Web. Unduh Apidog untuk mengikuti. Ini gratis, dan tidak memerlukan kartu kredit.

Langkah demi langkah: mock GET /users dan GET /orders

Mari kita bangun mock untuk API toko kecil. Kita akan mendefinisikan dua endpoint dan memanggil keduanya.

Langkah 1: definisikan endpoint dan skema responsnya

Buat GET /users dengan badan respons seperti ini:

{
  "id": 1024,
  "name": "Amara Osei",
  "email": "amara.osei@example.com",
  "phone": "+1-415-555-0148",
  "createdAt": "2026-03-11T09:24:00Z",
  "isActive": true
}

Kemudian buat GET /orders, mengembalikan daftar:

[
  {
    "orderId": "ORD-58210",
    "userId": 1024,
    "total": 84.50,
    "currency": "USD",
    "status": "shipped",
    "createdAt": "2026-05-02T14:03:00Z"
  }
]

Pastikan setiap properti memiliki tipe dalam skema. Tipe dan nama adalah apa yang digunakan Smart Mock untuk memilih nilai yang baik.

Langkah 2: temukan dan salin URL mock

Setiap endpoint mendapatkan URL mock secara otomatis. Tempat Anda menemukannya tergantung pada mode yang Anda gunakan:

Klik Klik untuk menyalin untuk mengambilnya. Satu hal yang perlu diperhatikan: ini hanya menyalin URL. Jika endpoint Anda menggunakan metode selain GET, atau memerlukan badan permintaan, Anda menambahkan metode dan badan tersebut sendiri saat memanggilnya.

URL Local Mock berjalan di 127.0.0.1 port 4523 dan terlihat seperti ini dalam mode jalur:

http://127.0.0.1:4523/m1/{projectID}-{versionNo}-{serverNo}/users

Local Mock dimulai secara otomatis saat klien Apidog terbuka. Ada juga bentuk mode ID yang menargetkan endpoint berdasarkan ID-nya:

http://127.0.0.1:4523/m2/{projectID}-{versionNo}-{serverNo}/{endpointId}

Langkah 3: panggil mock

Panggil URL dengan curl:

curl http://127.0.0.1:4523/m1/1234567-0-0/users

Anda mendapatkan sesuatu seperti ini, yang dihasilkan dari skema Anda:

{
  "id": 3187,
  "name": "Diego Marchetti",
  "email": "diego.marchetti@example.net",
  "phone": "+1-628-555-0113",
  "createdAt": "2026-01-27T18:41:22Z",
  "isActive": true
}

Perhatikan bahwa name terbaca seperti nama dan email terbaca seperti email. Itu adalah Property Name Matching yang berfungsi, bukan data acak. Muat ulang permintaan dan nilai-nilai dinamis akan dibuat ulang, sehingga setiap panggilan memberi Anda data baru. Ini berguna untuk menguji bagaimana UI Anda menangani konten yang bervariasi.

Panggil endpoint orders dengan cara yang sama:

curl http://127.0.0.1:4523/m1/1234567-0-0/orders

Anda mendapatkan array objek pesanan dengan total, status, dan stempel waktu yang realistis, siap untuk tampilan daftar pesanan Anda.

Bagaimana Smart Mock memutuskan setiap nilai

Ketika Smart Mock mengisi satu properti, ia bekerja melalui prioritas pembuatan data tiga tingkat. Memahami urutan ini memberi tahu Anda persis bagaimana mengarahkan output.

  1. Mock Field. Jika Anda menetapkan nilai atau ekspresi kustom pada properti dalam spesifikasi respons, itu yang akan berlaku. Mock Field menerima dua tipe input: nilai Tetap (Fixed value), yaitu nilai statis yang dikembalikan setiap kali, dan pernyataan Faker, yaitu ekspresi dinamis yang menghasilkan data bervariasi. Misalnya, atur Mock Field pada kolom status ke pernyataan Faker yang memilih dari shipped, pending, dan delivered.
  2. Pencocokan Nama Properti (Property Name Matching). Tanpa Mock Field yang diatur, Smart Mock mencocokkan nama properti dengan aturan bawaan menggunakan pola wildcard atau ekspresi reguler, lalu menghasilkan data yang sesuai. Inilah mengapa email dan createdAt muncul dengan benar. Aturan-aturan ini berada di bawah Pengaturan Mock (Mock Settings), dan Anda dapat menambahkan sendiri.
  3. JSON Schema. Jika nama tidak cocok dengan aturan apa pun, Smart Mock akan kembali ke default berbasis tipe yang dibatasi oleh skema Anda. Sebuah string tanpa nama yang cocok dan tanpa batasan hanya akan mendapatkan string generik.

Data yang dihasilkan mematuhi batasan JSON Schema Anda secara keseluruhan: panjang string, nilai enum, rentang angka, dan panjang array semuanya dihormati. Jika Anda mengatur status sebagai enum dari tiga nilai, Smart Mock hanya akan mengembalikan salah satu dari ketiganya. Jika Anda mengatur minItems sebuah array ke 3, Anda akan mendapatkan setidaknya tiga item kembali. Setiap pengaturan properti muncul dalam data mock akhir.

Apidog juga mendukung lokal mock, sehingga Anda dapat menghasilkan data uji dalam berbagai bahasa dan format regional. Jika toko Anda melayani pasar Jepang, ubah lokalnya dan nama serta alamat akan kembali dalam format yang benar.

Ketika Smart Mock salah menebak, dan bagaimana cara memperbaikinya

Smart Mock adalah inferensi, jadi terkadang ada kesalahan. Properti bernama sku mungkin tidak cocok dengan aturan bawaan apa pun dan kembali ke string generik. Sebuah total mungkin kembali sebagai angka biasa padahal Anda menginginkan dua angka di belakang koma dan rentang yang masuk akal. Berikut adalah cara memperbaikinya, dari sentuhan paling ringan hingga kontrol paling besar.

Perketat skema terlebih dahulu. Seringkali solusinya adalah batasan yang lebih baik. Tambahkan enum ke status, minimum dan maximum ke total, atau pattern ke sku. Smart Mock menghormati semua ini, sehingga output akan sesuai dengan rentang tanpa nilai kustom apa pun.

Atur Mock Field. Ketika skema saja tidak dapat mengungkapkan apa yang Anda inginkan, atur Mock Field properti tersebut. Gunakan nilai Tetap (Fixed value) ketika kolom harus selalu mengembalikan hal yang sama, seperti currency berupa USD. Gunakan pernyataan Faker ketika Anda menginginkan variasi dalam batasan. Lapisan Faker Apidog dibangun di atas ide yang sama dengan pustaka Mock.js, dan panduan kami tentang penggunaan Faker di Apidog mencakup sintaks ekspresi secara mendalam.

Tambahkan aturan Pencocokan Nama Properti. Jika kolom yang salah nama yang sama muncul di banyak endpoint, ajari Smart Mock sekali saja. Buka Pengaturan (Settings), lalu Pengaturan Umum (General Settings), lalu Pengaturan Fitur (Feature Settings), lalu Pengaturan Mock (Mock Settings). Klik Baru (New), definisikan kondisi yang cocok dengan nama kolom Anda, dan berikan ekspresi mock. Sejak saat itu, setiap sku di seluruh proyek akan menghasilkan pola yang Anda definisikan alih-alih string generik.

Urutan prioritas mock: apa yang sebenarnya menang

Sumber kebingungan yang umum adalah respons mana yang dikembalikan oleh sebuah endpoint ketika beberapa respons mungkin terjadi. Apidog menyelesaikan ini dengan pengaturan metode mock Default, yang ditemukan di Pengaturan Proyek (Project Settings) di bawah Pengaturan Mock (Mock Settings). Ini memiliki dua pilihan:

Baca dari kiri ke kanan. Dengan default, permintaan akan memeriksa Mock Expectation yang cocok, dan jika tidak ada yang cocok, Smart Mock akan menghasilkan badan respons. Beralih ke "Contoh respons pertama" dan Contoh Respons yang ditentukan akan diperiksa sebelum Smart Mock menjadi fallback.

Satu aturan berada di atas kedua urutan tersebut: Mock Expectations selalu memiliki prioritas pertama ketika dikonfigurasi dan kondisi mereka cocok, tidak peduli urutan mana yang Anda pilih. Jadi, jika Anda menyiapkan respons kondisional yang mengembalikan 404 ketika userId adalah 9999, ekspektasi tersebut akan dipicu terlepas dari metode mock Default. Untuk panduan lengkap tentang respons berbasis parameter, lihat panduan kami tentang mocking respons API kondisional di Apidog.

Ringkasan praktisnya: Mock Expectations kustom mengalahkan segalanya, lalu Smart Mock atau Contoh Respons tergantung pada pengaturan Anda. Smart Mock selalu menjadi fallback pilihan terakhir, itulah mengapa setiap permintaan mendapatkan respons.

Local, Cloud, dan Runner Mock: di mana mock berjalan

Smart Mock dan Custom Mock menjelaskan bagaimana sebuah respons dihasilkan. Di mana mock tersebut di-host adalah pilihan terpisah, dan Apidog memberi Anda tiga pilihan:

Pilih Local Mock untuk pekerjaan frontend solo, Cloud Mock ketika orang lain perlu menjangkaunya, dan Runner Mock ketika mock berada di server Anda sendiri. Jika Anda menimbang opsi hosting dibandingkan dengan layanan lain, perbandingan alat mocking API online kami menyajikannya secara berdampingan, dan panduan Apidog Cloud Mock mencakup pengaturan hosting secara rinci.

Beberapa jebakan routing yang perlu diketahui

Routing mock memiliki beberapa aturan yang sering membingungkan orang.

Jalur endpoint harus dimulai dengan /. Jalur seperti /orders akan dirutekan dengan benar melalui lingkungan mock. URL lengkap yang tidak dimulai dengan / sama sekali tidak akan menggunakan lingkungan mock, dan jalur tanpa garis miring di awal hanya berfungsi dalam mode ID.

Jika dua API berbagi metode dan jalur yang sama, mode jalur tidak dapat membedakannya sendiri. Tambahkan parameter kueri ?apidogApiId={endpointId} untuk menunjuk ke endpoint yang tepat yang Anda maksud.

Dan ingat perilaku penyegaran: data mock diperbarui saat Anda menyegarkan permintaan. Setiap penyegaran akan menghasilkan kembali nilai-nilai dinamis, jadi jika Anda melihat respons yang sama dua kali, kemungkinan Anda melihat tampilan yang di-cache daripada panggilan baru.

Otomatiskan alur kerja dengan Apidog CLI

Mocking itu sendiri adalah kemampuan GUI dan cloud di Apidog. Mesin mock, baik Lokal, Cloud, atau Runner, menyajikan respons; Apidog CLI tidak menghosting atau memulai server mock dari terminal. Yang ditambahkan oleh CLI adalah cara untuk menjaga agar skema di balik mock Anda tetap benar seiring dengan perkembangan proyek.

Karena Smart Mock menghasilkan outputnya dari skema endpoint, mock hanya sebaik spesifikasinya. Apidog CLI, dan agen pengkodean AI seperti Cursor, Claude Code, Trae, dan Codex yang bekerja melaluinya, dapat membuat dan memperbarui endpoint serta skema dalam proyek Anda. Ini menjaga output mock tetap akurat setiap kali kontrak berubah, tanpa perlu ada orang yang membuka aplikasi untuk mengedit kolom secara manual.

Kemudian, setelah mock telah membuka blokir pekerjaan frontend, skenario pengujian proyek yang sama berjalan tanpa kepala di CI untuk memeriksa backend nyata terhadap kontrak yang sama yang dijelaskan oleh mock. Itu adalah satu perintah:

apidog run -t <scenario_id> -e <env_id> -r html,cli

Instal dengan npm install -g apidog-cli (Node.js v16 atau yang lebih baru), otentikasi dengan apidog login --with-token <token-anda>, dan Anda dapat menyambungkannya ke pipeline apa pun. Panduan kami tentang menjalankan Apidog dalam pipeline CI/CD membahas pengaturannya. Mock menjaga frontend tetap berjalan; CLI menjaga backend jujur terhadap sumber kebenaran yang sama.

FAQ

Apakah saya harus menulis kode apa pun untuk menggunakan Smart Mock? Tidak. Selama sebuah endpoint memiliki skema respons yang ditentukan, Smart Mock akan menghasilkan data realistis secara otomatis. Anda hanya menggunakan kode, pernyataan Faker, atau skrip mock, ketika Anda ingin menimpa kolom tertentu. Lihat ikhtisar API mock untuk memahami konsepnya.

Mengapa URL mock saya tidak mengembalikan apa pun? Penyebab paling umum adalah tidak adanya definisi respons pada endpoint. Smart Mock membaca skema respons, jadi tambahkan dulu. Periksa juga bahwa jalur Anda dimulai dengan / dan, jika Anda menggunakan Local Mock, pastikan klien Apidog terbuka.

Bagaimana cara membuat Smart Mock mengembalikan nilai tertentu alih-alih nilai acak? Atur Mock Field properti tersebut. Nilai Tetap (Fixed value) akan mengembalikan hal yang sama setiap kali; pernyataan Faker mengembalikan data yang bervariasi tetapi terkontrol. Mock Field berada di puncak prioritas tiga tingkat Smart Mock, jadi ini selalu mengalahkan pencocokan nama dan default skema.

Bisakah rekan tim menjangkau mock yang berjalan di laptop saya? Hanya melalui jaringan lokal Anda, dan hanya saat klien Apidog terbuka, karena Local Mock mendengarkan di 127.0.0.1:4523. Untuk akses yang selalu aktif, aktifkan Cloud Mock, yang secara default nonaktif dan di-host di https://mock.apidog.com.

Respons mana yang menang jika saya memiliki contoh dan Smart Mock? Itu tergantung pada metode mock Default. Dengan Smart Mock Pertama, Smart Mock menghasilkan badan respons. Dengan Contoh respons pertama, Contoh Respons Anda digunakan sebelum Smart Mock. Bagaimanapun, Mock Expectation yang cocok akan menimpa keduanya.

Ringkasan

Smart Mock mengubah skema API menjadi mock yang berfungsi tanpa kode dan tanpa konfigurasi, yang persis seperti yang dibutuhkan frontend yang terhambat. Definisikan respons Anda, salin URL mock dari tab API atau tab Mock, dan panggil; ketika tebakan perlu diarahkan, perketat skema atau atur Mock Field, dan ingat bahwa Mock Expectations selalu menang. Unduh Apidog dan mock endpoint pertama Anda dalam waktu yang diperlukan untuk membaca kalimat ini.

tombol

Mengembangkan API dengan Apidog

Apidog adalah alat pengembangan API yang membantu Anda mengembangkan API dengan lebih mudah dan efisien.