se-hari.com se-hari.com

Proses semua rekaman lama sekaligus

Menyapu seluruh rekaman yang belum pernah dibuatkan notulen, lalu mengantrekannya satu per satu. Ini resep dengan hasil paling langsung terasa: arsip…

3 menit baca Diperbarui 15 Agustus 2026 Lihat sebagai Markdown

Menyapu seluruh rekaman yang belum pernah dibuatkan notulen, lalu mengantrekannya satu per satu. Ini resep dengan hasil paling langsung terasa: arsip rapat yang selama ini hanya jadi berkas video berubah menjadi ringkasan yang bisa dicari.

#Kapan resep ini masuk akal

Ini resep sekali jalan, bukan otomasi berkelanjutan. Jalankan sekali untuk mengejar arsip yang tertinggal, lalu matikan — untuk rekaman baru, aktifkan notulen otomatis saat membuat meeting alih-alih menyapunya belakangan. Nilainya terbesar bagi akun yang sudah lama memakai Se-Hari dan punya ratusan rekaman yang belum pernah disentuh.

#Yang dihasilkan

Satu notulen untuk setiap rekaman yang belum punya.

#Yang Anda butuhkan

  • n8n self-hosted dengan community node n8n-nodes-sehari terpasang
  • recordings:read
  • notulen:write
  • credits:read

Kalau belum memasang node-nya, ikuti panduan n8n lebih dulu — pemasangannya satu langkah dari menu Settings.

#Alur workflow

  1. Jalankan Manual (manualTrigger)
  2. Cek Saldo (Se-Hari: seHari)
  3. Rekaman Tanpa Notulen (Se-Hari: seHari)
  4. Jeda 30 Detik (wait)
  5. Antrekan Notulen (Se-Hari: seHari)

#Cara memakainya

  1. Salin JSON di bawah
  2. Di n8n: Workflows → Import from Clipboard, lalu tempel
  3. Pilih kredensial Se-Hari API pada setiap node Se-Hari
  4. Sesuaikan node tujuan (lihat catatan di bawah)
  5. Aktifkan workflow

Kalau workflow ini memakai node trigger, endpoint webhook-nya didaftarkan otomatis saat diaktifkan dan dihapus saat dinonaktifkan. Tidak ada URL yang perlu disalin manual.

#Yang perlu disesuaikan

Node Wait wajib ada, jangan dihapus. Worker notulen memproses satu pekerjaan pada satu waktu; mengirim 300 permintaan sekaligus tidak mempercepat apa pun, hanya membuat antrean panjang yang sulit dipantau. Jeda 30 detik antar item sudah cukup.

#Sebelum dijalankan di produksi

Impor dulu ke workflow terpisah dan jalankan sekali secara manual. n8n menyimpan hasil setiap node pada eksekusi terakhir, jadi Anda bisa melihat bentuk data yang sebenarnya keluar dari node Se-Hari sebelum menulis ekspresi apa pun di node berikutnya. Menebak bentuk data lalu memperbaikinya lewat percobaan berulang jauh lebih lambat, dan pada resep yang memakai kredit, percobaan berulang itu ada harganya.

Perhatikan juga penagihan kredit resep ini. Operasi yang membuat meeting memotong kredit saat itu juga, sedangkan operasi notulen menagih setelah pemrosesan selesai sesuai durasi asli rekaman. Kalau workflow Anda membaca saldo tepat setelah mengantre notulen, angkanya belum berubah — itu bukan bug. Pasang batas kredit harian pada API key yang dipakai workflow ini supaya kesalahan sekali tidak berubah menjadi tagihan besar.

#Kalau tidak berjalan seperti seharusnya

Kredit ditagih per notulen setelah selesai, sesuai durasi asli. Untuk 300 rekaman, itu bisa jumlah yang besar — jalankan Cek Saldo dulu dan hitung perkiraannya dengan Estimasi Biaya. Kalau saldo habis di tengah jalan, sisanya gagal dengan insufficient_credits dan perlu dijalankan ulang setelah top up.

Untuk masalah yang lebih umum, tab Webhooks di dashboard developer memuat riwayat pengiriman lengkap dengan kode respons dari instance n8n Anda — tempat pertama yang harus dilihat ketika trigger tidak pernah berjalan.

#Variasi yang sering diminta

  • Batasi jumlahnya dengan mematikan Ambil Semua dan menyetel Limit, lalu jalankan bertahap sambil memantau saldo.
  • Saring hanya rekaman di atas durasi tertentu; rekaman dua menit jarang layak dibuatkan notulen.
  • Catat setiap rekaman yang diproses ke spreadsheet, supaya bisa dilanjutkan kalau eksekusi terputus di tengah.

#Workflow JSON

json
{
  "name": "Proses Semua Rekaman Lama",
  "nodes": [
    {
      "parameters": {
        "content": "## Proses Semua Rekaman Lama\n\nMenyapu semua rekaman yang belum punya notulen dan mengantrekannya satu per satu.\n\n**Node Wait wajib ada.** Worker notulen memproses satu pekerjaan pada satu waktu; mengirim 300 permintaan sekaligus hanya membuat antrean panjang dan sulit dipantau, bukan mempercepat apa pun.\n\nKredit ditagih per notulen setelah selesai, sesuai durasi asli. Jalankan \"Cek Saldo\" dulu.",
        "width": 460,
        "height": 260
      },
      "id": "note-1",
      "name": "Catatan",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        -40,
        -40
      ]
    },
    {
      "parameters": {},
      "id": "manual-1",
      "name": "Jalankan Manual",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        0,
        300
      ]
    },
    {
      "parameters": {
        "resource": "kredit",
        "operation": "balance"
      },
      "id": "sh-CekSaldo",
      "name": "Cek Saldo",
      "type": "n8n-nodes-sehari.seHari",
      "typeVersion": 1,
      "position": [
        220,
        300
      ],
      "credentials": {
        "seHariApi": {
          "id": "__SEHARI_CRED__",
          "name": "Se-Hari API"
        }
      }
    },
    {
      "parameters": {
        "resource": "rekaman",
        "operation": "getAll",
        "returnAll": true,
        "filters": {
          "has_note": true
        }
      },
      "id": "sh-RekamanTanpaNotulen",
      "name": "Rekaman Tanpa Notulen",
      "type": "n8n-nodes-sehari.seHari",
      "typeVersion": 1,
      "position": [
        440,
        300
      ],
      "credentials": {
        "seHariApi": {
          "id": "__SEHARI_CRED__",
          "name": "Se-Hari API"
        }
      }
    },
    {
      "parameters": {
        "amount": 30,
        "unit": "seconds"
      },
      "id": "wait-Jeda30Detik",
      "name": "Jeda 30 Detik",
      "type": "n8n-nodes-base.wait",
      "typeVersion": 1.1,
      "position": [
        660,
        300
      ],
      "webhookId": "__AUTO__"
    },
    {
      "parameters": {
        "resource": "notulen",
        "operation": "create",
        "recordingId": "={{ $json.note.id }}",
        "createOptions": {}
      },
      "id": "sh-AntrekanNotulen",
      "name": "Antrekan Notulen",
      "type": "n8n-nodes-sehari.seHari",
      "typeVersion": 1,
      "position": [
        880,
        300
      ],
      "credentials": {
        "seHariApi": {
          "id": "__SEHARI_CRED__",
          "name": "Se-Hari API"
        }
      }
    }
  ],
  "connections": {
    "Jalankan Manual": {
      "main": [
        [
          {
            "node": "Cek Saldo",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Cek Saldo": {
      "main": [
        [
          {
            "node": "Rekaman Tanpa Notulen",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Rekaman Tanpa Notulen": {
      "main": [
        [
          {
            "node": "Jeda 30 Detik",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Jeda 30 Detik": {
      "main": [
        [
          {
            "node": "Antrekan Notulen",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1"
  },
  "pinData": {},
  "meta": {
    "templateCredsSetupCompleted": false
  },
  "tags": [
    {
      "name": "Se-Hari"
    }
  ]
}

#Resep lain

Siap mencoba?

Buat API key gratis di dashboard — tidak ada biaya berlangganan, kredit terpakai hanya saat Anda benar-benar memproses rekaman atau membuat meeting.

Buat API Key