Arahkan n8n ke kenari

n8n sudah bisa jadi agent, tapi node AI Agent nggak mau jalan sebelum kamu isi kredensial OpenAI. Padahal workflow-nya cuma butuh satu model yang bisa dipanggil.
Kredensial itu bisa diarahkan ke endpoint apa pun yang kompatibel dengan OpenAI, termasuk kenari, jadi yang kamu ganti cuma tiga field: API Key jadi kn-, Base URL ke kenari, dan Model ke id berakhiran :free.
Kalau yang kamu cari justru editor coding (Claude Code, Codex, OpenCode), tulisannya ada sendiri di Arahkan editor kamu ke kenari.
AI Agent di n8n jalan lewat sub-node
AI Agent itu root node, dan dia sendiri nggak pernah memanggil model. Kamu yang menempelkan sub-node chat model ke slotnya lalu menambahkan satu atau lebih tool, dan agent-nya yang memutuskan tool mana yang dipanggil.
Dokumentasi n8n minta AI Agent dipasangi minimal satu tool, soalnya tanpa itu node-nya belum lengkap. Kalau cuma mau memastikan koneksinya hidup, pakai OpenAI Chat Model di dalam Basic LLM Chain dan lewati agent-nya, karena kredensialnya sama persis.
Satu hal yang sering bikin orang muter-muter: model di n8n dikonfigurasi lewat kredensial OpenAI, bukan dari node bernama “Kenari”, dan kenari juga belum punya node atau integrasi resmi di n8n, jadi caranya ya pakai kredensial bawaan itu, diarahkan ke gateway kompatibel.
Field kredensial yang benar-benar ada
Tipe kredensialnya bernama OpenAI, dan dari source n8n sekarang isinya cuma segini:
| Field | Wajib | Isi untuk kenari |
|---|---|---|
| API Key | ya | kn-... dari dashboard kenari |
| Organization ID (optional) | tidak | kosongkan |
| Base URL | tidak, ada default | https://kenari.id/v1 |
| Add Custom Header | tidak | biarkan mati |
Default Base URL n8n adalah https://api.openai.com/v1, jadi ganti seluruh nilainya dan jangan cuma menempel /v1 di belakang yang sudah ada. Begitu bentuknya jadi https://kenari.id/v1/v1/..., yang kamu terima biasanya 405, bukan pesan error yang menjelaskan letak salahnya.
Tes kredensial di n8n memanggil GET {Base URL}/models, dan GET https://kenari.id/v1/models kebetulan publik dan aktif, jadi begitu tesnya hijau, artinya n8n sudah membaca katalog yang sama.
Header yang dikirim n8n cuma Authorization: Bearer <API Key>, dan itu format yang kenari harapkan. Organization ID, kalau diisi, ikut terkirim sebagai OpenAI-Organization, jadi kosongkan saja, dan custom header nggak kepakai di sini.
Tiga nilai, lalu tempel ke agent
1. Key kn-
Masuk ke dashboard, buka API keys, klik Buat key. Key-nya diawali kn- dan cuma ditampilkan sekali, jadi langsung salin. Satu key ini kepakai untuk semua model, baik lewat endpoint OpenAI-compatible maupun Anthropic, dan tempatnya di kolom API Key kredensial n8n, bukan di chat workflow.
2. Base URL
https://kenari.id/v1
Ini pengganti langsung https://api.openai.com/v1, dan path seperti /chat/completions atau /models ditempelkan n8n sendiri di belakangnya.
3. Model :free
Di node OpenAI Chat Model, field Model dimuat dinamis dari /models pada Base URL tadi, jadi ketik atau pilih id persis seperti di katalog. Buat tes tanpa saldo, step-3-7-flash:free aman: waktu kami cek, id itu ada di katalog dengan pricing.free: true dan tool_call: true, dan flag kedua itu wajib karena AI Agent butuh tool call.
Daftar id-nya berubah sewaktu-waktu, jadi jangan dihafalkan. Cek saja:
curl https://kenari.id/v1/models
Cari id berakhiran :free, atau entri dengan pricing.free: true. Tapi jangan berhenti di akhiran itu. Waktu kami cek, katalognya punya 16 id :free, dan cuma 14 yang tool_call: true. Dua sisanya nggak.
Kalau yang kamu pilih kebetulan salah satu dari dua itu, AI Agent tetap jalan dan tetap menjawab. Yang nggak pernah terjadi cuma satu: tool yang kamu tempel nggak pernah dipanggil, dan nggak ada error yang memberi tahu kamu. Jadi baca flag tool_call-nya, bukan cuma akhirannya.
Soal cara memilih model gratis dan bedanya sama PAYG atau BYOK, sudah kami tulis di Coba dulu pakai model :free.
Pasang di kanvas

- Tambah AI Agent.
- Tempel OpenAI Chat Model ke slot model, pilih kredensial yang Base URL-nya kenari, lalu set Model ke
step-3-7-flash:free. - Biarkan Use Responses API mati. Alasannya di bawah.
- Tempel paling tidak satu tool n8n (HTTP Request, Wikipedia, atau tool workflow-mu). AI Agent yang memutuskan kapan memanggilnya.
- Jalankan sekali. Kalau
choicesatau output agent-nya berisi jawaban, koneksinya hidup.
Enaknya, workflow lain yang memakai kredensial yang sama ikut pindah sendiri, tanpa kamu ganti satu node pun.
Soal toggle Use Responses API
Toggle ini kelihatan seperti versi yang lebih baru, jadi wajar kalau tangan gatal menyalakannya. Untuk kasus n8n, biarkan saja mati.
Default n8n adalah Chat Completions di /v1/chat/completions, dan itu jalur yang kami pakai untuk klien OpenAI-compat. kenari menerima /v1/responses juga, tapi sebagai subset yang stateless: previous_response_id ditolak, dan tipe tool selain function dibuang tanpa pesan apa pun.
Bagian “tanpa pesan apa pun” itu yang bikin orang muter-muter. Tool bawaan di balik toggle itu, Web Search, File Search, dan Code Interpreter, semuanya milik OpenAI, bukan tool n8n yang kamu pasang di kanvas. Nyalakan toggle-nya dan tool-tool itu hilang dari request, tanpa satu pun error yang menjelaskan ke mana perginya.
Kalau mentok
- Tes kredensial merah, atau
401: key-nya salah, kepotong, atau masihsk-lama. Salin ulangkn-.... model_not_found: id-nya salah ketik, atau dropdown-nya masih menyimpan id OpenAI. Pakai persis id dariGET /v1/models.402 insufficient_balance: modelnya bukan:freedan saldomu Rp 0. Ganti ke id:free, atau isi saldo dulu.405: bentuk Base URL-nya salah. Harushttps://kenari.id/v1, bukanhttps://kenari.iddan bukan.../v1/v1.429denganfree_quota_rpmataufree_quota_daily: kamu kena batas kuota:free. BacaRetry-After, lalu ganti ke model berbayar atau isi saldo.
n8n Cloud dan n8n self-host memakai tipe kredensial yang sama, jadi yang berubah cuma nilai field-nya.