Provider
Halaman Provider & Rute di dashboard, tab Provider, adalah tempat kamu membawa akun milikmu sendiri ke kenari. Ada dua jenis. API key adalah key dari akun provider yang kamu bayar per token. Langganan AI adalah login ke paket yang sudah kamu bayar, seperti ChatGPT Plus atau Pro, kredit Claude Max atau Team, atau SuperGrok. Keduanya kamu panggil lewat endpoint dan key kn- yang sama.
Request yang dilayani key atau langganan milikmu ditagih Rp 0 di kenari. Provider yang menagih kamu, saldo kenari tidak terpotong, dan pemakaian tetap muncul di analitik. Saat key atau langganan tidak bisa melayani request, rute bisa melanjutkannya dengan saldo. Biaya per pencarian untuk Server tools seperti web search tetap berlaku.
BYOK (bring your own key) kini hanya nama awalan id model byok/ yang dipakai untuk menunjuk akun-akun ini. BYOK bukan lagi nama halaman di dashboard.
API key
Section titled “API key”Tambah key
Section titled “Tambah key”- Buka Provider & Rute di dashboard, lalu tab Provider.
- Di bagian API key, klik Tambah API Key.
- Pilih Provider, tempel key, tambahkan Label (opsional) jika perlu, lalu klik Simpan.
kenari memeriksa key sesaat setelah kamu menyimpannya dan menampilkan hasilnya di baris key.
Nama chatgpt dan grok dipakai oleh login langganan, jadi kamu tidak bisa menambahkan API key dengan nama itu.
Provider tidak ada di daftar
Section titled “Provider tidak ada di daftar”Pilih Custom (endpoint sendiri) lalu isi:
- Nama provider: nama unik seperti
my-proxy. kenari mengubahnya menjadi huruf kecil dan mengganti spasi dengan tanda hubung. Kamu memakai nama ini di id modelbyok/dan saat menyusun rute. - Base URL: base URL endpoint-mu.
- Jenis API: Kompatibel OpenAI atau Anthropic.
Kelola key
Section titled “Kelola key”Setiap provider yang kamu pakai tampil sebagai kartu, dengan key-nya berurutan sesuai prioritas.
| Kontrol | Fungsinya |
|---|---|
| Periksa | Menjalankan pemeriksaan ulang key ke provider. |
| Lihat model | Menampilkan model yang bisa dijangkau key ini, lengkap dengan Salin ID untuk tiap model. |
| Menu baris | Ubah API Key, Salin ID kunci, Nonaktifkan atau Aktifkan, Hapus API Key. Jika satu provider punya dua key atau lebih, ada juga Naikkan prioritas dan Turunkan prioritas. |
Status key
Section titled “Status key”Setiap baris menampilkan satu status.
| Status | Artinya |
|---|---|
| Aktif | Key lulus pemeriksaan, atau pemeriksaan tidak bisa memastikan tetapi key melayani request dalam 7 hari terakhir. Baris bisa menambahkan “dipakai 2 jam lalu” atau “belum pernah dipakai”. |
| Jeda N menit | Provider membatasi key (rate limit), sedang ada gangguan sementara, atau kuota key habis. Key otomatis dapat digunakan kembali setelah jeda berakhir. |
| Gagal | Provider menolak key. Tidak ada request yang lewat key ini sampai kamu memperbaikinya. |
| Status tidak diketahui | Provider tidak bisa diperiksa otomatis, misalnya endpoint custom tanpa daftar model. Key menjadi Aktif setelah ada request yang berhasil lewat key itu. |
| Belum diperiksa | Key baru yang menunggu pemeriksaan pertamanya. |
| Nonaktif | Kamu mematikan key ini. Key tidak melayani request sampai kamu klik Aktifkan. |
Cadangan saldo kenari
Section titled “Cadangan saldo kenari”Setiap kartu provider API key punya sakelar Cadangan saldo kenari. Saat sakelar aktif dan semua key kamu untuk provider itu gagal atau kena limit, kenari menyelesaikan request dengan kapasitasnya sendiri dan memotong saldomu dengan tarif PAYG. Jika semua key kamu gagal dan cadangan mati, request gagal.
Jika sakelar aktif tetapi saldo terlalu rendah, kartu menampilkan peringatan dan tautan Isi saldo. Cadangan tidak bisa menutup request sampai kamu menambah saldo. Lihat Cara penagihan.
Cadangan ini milik API key. Request ke id byok/chatgpt/... atau byok/grok/... tidak pernah menyentuh saldomu. Untuk melanjutkan dengan saldo setelah sebuah langganan, pakai rute.
Urutan fallback
Section titled “Urutan fallback”kenari mencoba key di satu kartu dari atas ke bawah, lalu pindah ke key berikutnya saat satu key gagal atau kena limit. Cadangan saldo, bila aktif, selalu terakhir. Pakai Naikkan prioritas dan Turunkan prioritas untuk mengubah urutan.
Pakai model katalog
Section titled “Pakai model katalog”Kamu tidak perlu mengubah kode. Kirim request dengan key kn- seperti biasa. Saat model yang kamu minta dilayani provider yang key-nya kamu daftarkan, kenari mencoba key-mu lebih dulu.
curl https://kenari.id/v1/chat/completions \ -H "Authorization: Bearer $KENARI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "deepseek-v4-flash", "messages": [{"role": "user", "content": "Halo!"}] }'Login langganan tidak dipakai untuk model katalog. Tunjuk dengan id byok/ atau lewat rute.
Langganan AI
Section titled “Langganan AI”Bagian Langganan AI di atas daftar API key punya satu kartu pilihan untuk ChatGPT, Claude, dan Grok. Setelah kamu menghubungkan sebuah langganan, kenari menampilkannya sebagai kartu lengkap dengan status dan kuotanya.
Kamu bisa menghubungkan maksimal 5 login ChatGPT dan Grok secara total, satu login untuk tiap akun di provider. Menghubungkan lagi akun ChatGPT atau Grok yang sama menggantikan loginnya, bukan menambah login kedua. Kredit Claude adalah API key biasa, jadi tidak dihitung dalam batas 5.
Khusus pelanggan Langganan
Section titled “Khusus pelanggan Langganan”ChatGPT dan Grok membutuhkan Langganan aktif. Kartu pilihan untuk akun yang belum berlangganan menampilkan Khusus pelanggan Langganan dan tautan Lihat Langganan. Masa percobaan dan paket hadiah dihitung sebagai Langganan aktif. Lihat Langganan.
Jika Langgananmu berakhir, login tetap tersimpan dan kartunya menampilkan Butuh Langganan aktif. kenari melewati login itu, request ke byok/chatgpt/... atau byok/grok/... mendapat 403 dan subscription_required, dan rute melewati langkahnya lalu lanjut ke langkah berikutnya. Perpanjang Langgananmu dan login berfungsi lagi. kenari terus memperbarui login yang dipakai atau dihubungkan dalam 30 hari terakhir, jadi jeda singkat tidak membuatmu keluar dari login.
Kredit Claude adalah API key, jadi menambahkannya terbuka untuk semua orang. Passthrough Claude Managed Agents butuh Langganan aktif.
Hubungkan ChatGPT
Section titled “Hubungkan ChatGPT”Pakai kuota Codex dari paket Plus atau Pro kamu.
- Di kartu ChatGPT, klik Hubungkan.
- Baca catatannya, lalu klik Mulai. kenari menampilkan kode di Kode kamu.
- Klik Buka halaman ChatGPT. Tombol ini membuka
https://auth.openai.com/codex/devicedi tab baru. Masuk ke akun ChatGPT kamu lalu masukkan kodenya. - Kembali ke dashboard. Dashboard menampilkan Menunggu konfirmasi sampai OpenAI menyetujui, lalu ChatGPT tersambung.
Kode berlaku dalam waktu terbatas dan dialog menampilkan sisa waktunya. Jika kode kedaluwarsa atau kamu membatalkan login, klik Coba lagi untuk mendapat kode baru.
Hubungkan Grok
Section titled “Hubungkan Grok”Pakai kuota dari SuperGrok atau X Premium+ kamu.
- Di kartu Grok, klik Hubungkan, lalu Mulai.
- Klik Buka halaman Grok. Tombol ini membuka halaman perangkat xAI di
https://accounts.x.ai/oauth2/device. Masuk ke akun xAI kamu lalu masukkan kodenya. - Kembali ke dashboard dan tunggu Grok tersambung.
xAI yang menentukan paket mana yang boleh memakai akses ini. Jika paketmu tidak bisa, kartu menampilkan Paket Grok kamu belum mendukung akses ini.
Hubungkan kredit Claude
Section titled “Hubungkan kredit Claude”Kredit Claude adalah kredit API bulanan di paket Max atau Team. Kredit ini dipakai lewat API key biasa dari Anthropic Console, jadi tidak ada kode untuk dimasukkan.
- Di kartu Claude, klik Hubungkan.
- Buka claude.ai, lalu Settings, Billing, dan pilih Link organization di bagian API credits.
- Buka platform.claude.com, lalu API keys, dan buat API key baru di organisasi itu.
- Tempel key ke dialog.
- Pilih Paket: Max 5x ($100/bulan), Max 20x ($200/bulan), Team, atau Lainnya. Untuk Team dan Lainnya, isi Kredit per bulan (USD) antara $1 dan $500.
- Atur Tanggal pembaruan, yaitu tanggal kreditmu diperbarui setiap bulan.
- Biarkan Berhenti otomatis saat kredit habis menyala, atau matikan. Secara bawaan menyala.
Lihat Perkiraan kredit dan berhenti otomatis untuk isi kartu dan fungsi sakelarnya.
Key disimpan sebagai API key anthropic. Pakai dengan byok/anthropic/<model>, dan dengan passthrough Claude Managed Agents. Pilih Ubah kredit di kartu untuk mengganti paket atau tanggal pembaruan nanti.
Perkiraan kredit dan berhenti otomatis
Section titled “Perkiraan kredit dan berhenti otomatis”kenari tidak bisa membaca sisa kreditmu dari Anthropic, jadi kartu menampilkan perkiraan. Perkiraan ini menjumlahkan request yang dikirim kenari dengan key itu selama periode berjalan, dinilai dengan harga daftar Anthropic untuk tiap model. kenari tidak tahu soal hal lain.
- Periode dimulai pada Tanggal pembaruan pukul 00:00 UTC dan berlangsung sampai tanggal pembaruan berikutnya. Saat diperbarui, perkiraan mulai lagi dari nol.
- Sebuah request muncul di perkiraan dalam sekitar 10 detik.
- Saat Berhenti otomatis saat kredit habis menyala, model yang tidak punya harga daftar dihitung dengan harga daftar Anthropic yang paling mahal, jadi perkiraan cenderung lebih tinggi. Saat sakelar mati, model seperti itu dihitung nol.
Saat perkiraan mencapai kredit bulananmu dan sakelar menyala, kenari melewati key itu, sama seperti key yang dijeda. Rute lanjut ke langkah berikutnya, dan langkah terakhir bisa berupa Saldo kenari (PAYG). Request ke byok/anthropic/... gagal dengan 403 dan byok_credential_unavailable jika kamu tidak punya key Anthropic lain yang bisa melayaninya. kenari memeriksa perkiraan kira-kira setiap 15 detik, jadi beberapa request masih bisa lolos tepat setelah kredit habis. Key berfungsi lagi saat periode diperbarui. Kamu juga bisa menaikkan kredit lewat Ubah kredit, atau mematikan sakelarnya.
Putuskan koneksi
Section titled “Putuskan koneksi”Buka menu kartu dan pilih Putuskan. kenari menghapus login dan berhenti memakai langgananmu. Kamu bisa menghubungkannya lagi kapan saja.
Status kartu
Section titled “Status kartu”| Status | Artinya |
|---|---|
| Tersambung | Login berfungsi. |
| Dibatasi sampai sebuah waktu | Langganan kena limit, atau provider sedang ada gangguan sementara. kenari melewatinya sampai waktu itu. |
| Perlu dihubungkan ulang | Login ditolak dan tidak bisa diperbarui. Hubungkan lagi dari kartunya dan masuk dengan akun yang sama. |
| Butuh Langganan aktif | Langgananmu sudah berakhir. Lihat Khusus pelanggan Langganan. |
| Paket Grok kamu belum mendukung akses ini | xAI menolak akses untuk paketmu. |
Id model
Section titled “Id model”Tunjuk koneksi atau key dengan id byok/:
byok/<provider>/<id-model-di-provider-kamu>| Bagian | Aturan |
|---|---|
byok | Literal, huruf kecil. |
<provider> | chatgpt, grok, atau anthropic untuk tiga langganan. Selain itu, provider dari key-mu atau Nama provider untuk endpoint custom. Pencocokan tidak membedakan huruf besar dan kecil. |
| Sisanya | Dikirim ke provider apa adanya, termasuk garis miring dan titik dua. Huruf besar dan kecil dipertahankan. |
Provider key bawaan adalah openai, anthropic, deepseek, xai, groq, mistral, dan opencode. Endpoint custom bernama my-proxy memakai byok/my-proxy/<id-model-di-provider-kamu>.
Untuk mencari id yang tepat, klik Lihat model di baris key atau di kartu langganan, lalu pakai Salin ID. Jalur ini tidak pernah memakai saldomu. Jika kamu punya beberapa key atau koneksi untuk provider itu, kenari mencobanya sesuai urutan prioritas.
Ketiga format API menerima id ini: Chat completions, Messages, dan Responses.
ChatGPT
Section titled “ChatGPT”curl https://kenari.id/v1/chat/completions \ -H "Authorization: Bearer $KENARI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "byok/chatgpt/gpt-5.5", "messages": [{"role": "user", "content": "Halo!"}] }'curl https://kenari.id/v1/chat/completions \ -H "Authorization: Bearer $KENARI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "byok/grok/grok-4", "messages": [{"role": "user", "content": "Halo!"}] }'Kredit Claude
Section titled “Kredit Claude”curl https://kenari.id/v1/chat/completions \ -H "Authorization: Bearer $KENARI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "byok/anthropic/claude-sonnet-5-5", "messages": [{"role": "user", "content": "Halo!"}] }'Id yang sama berlaku di POST /v1/messages:
curl https://kenari.id/v1/messages \ -H "x-api-key: $KENARI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "byok/anthropic/claude-sonnet-5-5", "max_tokens": 512, "messages": [{"role": "user", "content": "Halo!"}] }'Pakai koneksi di rute
Section titled “Pakai koneksi di rute”Sebuah koneksi tidak melayani model katalog dengan sendirinya. Supaya langganan berjalan lebih dulu dan saldomu mengambil alih setelahnya, susun rute:
- Buka tab Rute lalu buat rute custom, atau ubah rute yang ada.
- Tambahkan langkah. Di Kredensial, pilih koneksinya, yang tampil menurut provider dan akun, misalnya akun ChatGPT yang kamu hubungkan. Di Model, isi id model milik provider itu sendiri, tanpa awalan
byok/chatgpt/. - Tambahkan langkah terakhir dengan Kredensial Saldo kenari (PAYG) dan model yang dilayani kenari.
- Simpan, lalu kirim nama rute sebagai
model.
Satu langkah berisi satu koneksi dan satu model. kenari mencoba langkah secara berurutan. Langkah yang koneksinya dijeda, dinonaktifkan, keluar dari login, atau Langganannya berakhir akan dilewati, dan langkah berikutnya yang melayani. Hanya langkah saldo yang memotong saldomu.
Kartu ChatGPT atau Grok menunjukkan sisa jatah kamu. Batang menampilkan yang masih tersisa.
| Kartu | Yang ditampilkan |
|---|---|
| ChatGPT | Sesi 5 jam dan Mingguan. Tiap jendela menampilkan porsi yang tersisa dan kapan direset. |
| Grok | Kredit periode ini, dengan porsi yang tersisa dan tanggal Periode berakhir. |
| Claude | Kredit bulan ini (perkiraan), dengan jumlah yang terpakai dari kredit bulananmu dan tanggal pembaruan. Ini perkiraan kenari sendiri, lihat Perkiraan kredit dan berhenti otomatis. Kartu juga menunjukkan apakah berhenti otomatis aktif. |
kenari membaca angkanya saat kamu membuka halaman dan menyimpannya selama 60 detik. Saat angka sudah lama, kartu menampilkan kapan angka itu terakhir diperbarui, beserta tombol muat ulang. Periksa kuota di menu kartu juga memperbaruinya. Jika kenari tidak bisa membaca kuota, kartu menampilkan Kuota belum bisa dibaca. Request-mu tidak terpengaruh.
Di bawah batang, setiap kartu langganan juga menampilkan baris pemakaian, misalnya “1.240 request, 3,2 jt token dalam 30 hari”. Baris ini menghitung request yang dilayani kenari lewat koneksi itu selama 30 hari terakhir, dan token adalah input ditambah output. Baris muncul setelah koneksi melayani request pertamanya, dan diperbarui dalam sekitar 10 detik.
Saat sebuah langganan menjawab bahwa jatahnya habis, kenari menjeda koneksi itu sampai jendelanya direset. Kartu menampilkan Dibatasi sampai beserta waktunya, dan rute lanjut ke langkah berikutnya.
Berikut error yang bisa kamu temui di sekitar halaman ini. Daftar lengkapnya ada di Error.
Request
Section titled “Request”| Status | Kode | Kapan |
|---|---|---|
400 | byok_malformed_model_id | Id setelah byok/ tidak punya provider atau model. |
400 | byok_provider_not_found | Kamu tidak punya key atau koneksi untuk provider itu. |
403 | subscription_required | Request byok/chatgpt/... atau byok/grok/... dari akun tanpa Langganan aktif. |
403 | byok_credential_unavailable | Kamu punya key atau koneksi untuk provider itu, tetapi tidak ada yang bisa melayani sekarang karena dinonaktifkan, dijeda, atau keluar dari login. |
403 | byok_spend_capped_key | Key kn- yang kamu kirim punya batas biaya. |
Dashboard
Section titled “Dashboard”Kode ini datang dari dashboard saat kamu menghubungkan langganan atau membaca kuotanya. Dashboard mengubahnya menjadi pesan yang kamu lihat.
| Status | Kode | Kapan |
|---|---|---|
400 | provider_unsupported | Kamu mencoba menghubungkan provider selain ChatGPT atau Grok, atau provider sedang tidak tersedia. |
403 | subscription_required | Menghubungkan atau membaca kuota butuh Langganan aktif. |
409 | limit_reached | Kamu sudah punya 5 langganan tersambung. Di batas ini kamu tetap bisa masuk lagi untuk mengganti login yang perlu dihubungkan ulang. |
429 | rate_limited | Terlalu banyak percobaan login dalam satu jam, atau terlalu sering memperbarui kuota. Coba lagi nanti. |
503 | quota_unavailable | kenari tidak bisa membaca kuota dan tidak punya angka sebelumnya untuk ditampilkan. |
Key dengan batas biaya
Section titled “Key dengan batas biaya”Key dengan Batas biaya, Rp (opsional) tidak bisa memakai model byok/. Alasannya, dan cara membatasi pemakaian BYOK, ada di Autentikasi & API key.