Membangun workflow pertama di n8n: workflow dengan webhook trigger dan action email dari nol di editor visual, memetakan data antar node, menjalankan eksekusi dengan test payload, debugging lewat node output, serta memahami execution history untuk mengaudit hasil.

Di episode 3 instance n8n kalian sudah hidup. Sekarang saatnya momentum terbesar di series ini: membangun workflow pertama dari nol.
Episode ini membawa kalian membuat workflow sederhana yang dipicu webhook dan mengirim email — dua konsep paling dasar yang akan kalian pakai terus. Kita juga belajar menyimpan dan mengeksekusi workflow, debugging lewat node output, serta membaca execution history untuk mengaudit apa yang terjadi.
Sebelum menyentuh editor, rancang dulu tujuannya. Workflow kita akan:
Ini pola klasik automation: satu event masuk, satu aksi otomatis keluar. Data yang kita butuhkan dalam payload:
{
"nama": "Arief",
"email": "arief@example.com",
"produk": "Meja Belajar",
"total": 1250000
}Dengan rencana ini, kita tahu persis node apa saja yang dibutuhkan: Webhook di awal dan Email di akhir.
Buka dashboard, klik Create Workflow, dan beri nama misalnya notifikasi-pesanan. Sekarang:
Webhook ke kanvas. Konfigurasi HTTP method menjadi POST. n8n akan menampilkan dua URL: test dan production. Catat URL test-nya untuk tahap debugging.Email di bawah kanan webhook. Pilih resource Send Email.Konfigurasi node email untuk sementara boleh diisi data statis, karena kita akan memetakan data payload di bagian berikutnya. Tampilan dua node terhubung ini sudah cukup untuk workflow pertama.
Bagian paling penting: membuat email memakai data yang datang dari webhook. Di n8n, ini dilakukan dengan ekspresi — kode singkat yang membaca field dari item. Untuk membaca field payload, klik ikon fx pada field To, Subject, dan Text, lalu isi ekspresi:
{
"to": "{{ $json.email }}",
"subject": "Pesanan baru dari {{ $json.nama }}",
"text": "Terima kasih, {{ $json.nama }}! Pesanan {{ $json.produk }} sebesar {{ $json.total }} sedang diproses."
}Ekspresi seperti ini dibuka dengan dua kurung kurawal dan membaca field dari item saat ini. Preview panel akan menampilkan hasilnya secara live — jika payload berisi nama = Arief, field To otomatis menjadi arief@example.com.
Ada dua cara menjalankan workflow di n8n:
Webhook memiliki URL test di path /webhook-test/...; saat workflow masih dalam mode test, request yang masuk langsung memicu eksekusi./webhook/... dan hanya berjalan saat workflow diaktifkan.Untuk menguji webhook test, kirim request dari terminal. Jika belum yakin curl tersedia di mesin kalian, cek dulu dengan curl --version:
curl -X POST http://localhost:5678/webhook-test/notifikasi-pesanan \
-H "Content-Type: application/json" \
-d '{"nama":"Arief","email":"arief@example.com","produk":"Meja Belajar","total":1250000}'Jika semua terhubung benar, workflow tereksekusi dan email terkirim (atau tercatat di node Email pada setup email lokal).
Saat terjadi masalah, jangan tebak — periksa node output. Klik node yang mencurigakan, lalu buka tab Output. Di sana kalian melihat persis data yang keluar dari node tersebut:
Webhook.email ada? Periksa apakah key di JSON cocok dengan ekspresi kalian.Satu pola debugging yang wajib dibiasakan: jalankan Execute Node pada satu node saja untuk melihat hasil antara tanpa mengeksekusi seluruh workflow. Ini mempercepat menemukan titik yang bermasalah.
Selain itu, manfaatkan panel Expression Editor pada tiap field — di sana kalian bisa mengetik ekspresi dan melihat preview hasilnya berdasarkan data yang ada, sebelum workflow benar-benar dijalankan. Kombinasi preview ekspresi dan output node membuat siklus coba-ralat jadi jauh lebih singkat.
Setiap kali workflow dijalankan — dari test atau production — n8n menyimpan execution record. Buka menu Executions untuk melihat riwayat:
Execution history adalah jejak audit otomasi kalian. Saat sebuah workflow yang dijadwalkan gagal di tengah malam, kalian bisa membuka eksekusinya dan melihat node mana yang bermasalah serta data apa yang sedang diproses.
Info
Selalu beri nama workflow dan node dengan jelas, misalnya webhook-pesanan-masuk dan kirim-email-konfirmasi. Nama yang baik membuat execution history jauh lebih mudah dibaca dan dicari.
Episode ini melatih kalian membangun workflow pertama end-to-end: merancang kebutuhan, menyusun node webhook dan email di kanvas, memetakan data payload dengan ekspresi, menjalankan test maupun production, mendebug lewat node output, dan membaca execution history untuk audit.
Inti yang harus dibawa pulang:
/webhook-test/, production memakai /webhook/ dan butuh workflow aktif.Output adalah alat debugging utama — lihat datanya, bukan menebak.Di episode 5 berikutnya, kita bedah sumber pemicu secara mendalam: trigger dan event sources — jenis trigger webhook, cron, polling, dan event-based, konfigurasi webhook yang aman, serta cara memicu workflow dari cloud services dan integrasi API. Sampai jumpa!