Lewati ke konten
kenari.

Model & harga

Daftar model bersifat dinamis. Jangan menulis daftar statis di kodemu: panggil GET /v1/models (publik, tanpa key) dan baca harga serta kemampuan setiap model langsung dari sana. GET /v1/models tanpa parameter hanya mendaftar model chat (sama seperti OpenRouter): model embedding, rerank, moderation, dan System One tidak muncul di sana. Untuk model-model tersebut, gunakan ?modality= (lihat di bawah).

Terminal window
curl https://kenari.id/v1/models

Setiap entri membawa id, vendor (owned_by), dan, bila diketahui, panjang konteks, modalitas input/output, flag reasoning dan tool_call, level reasoning_options, pricing (daftar tarif per token dalam micro-Rupiah per 1 juta token), pricing_lines (array per baris tertagih: endpoint, billable, unit, variant, micro_idr, dengan satu parser untuk semua tipe), endpoints (keluarga API kenari yang dilayani baris ini, misalnya chat, embeddings, images), dan sunset_at. Harga di endpoint ini sama persis dengan tabel di bawah karena sumbernya sama.

sunset_at adalah epoch detik saat model dijadwalkan berhenti dilayani, atau null bila tidak ada jadwal. Model tetap terdaftar dan tetap melayani permintaan sampai waktu itu lewat. Setelah lewat, model hilang dari GET /v1/models dan permintaan ke id tersebut ditolak. Periksa nilai ini bila kamu menyimpan salinan daftar model di sisimu, supaya kamu bisa pindah model sebelum tanggalnya tiba.

Gunakan parameter query modality untuk mendaftar model khusus:

Nilai modalityIsi daftarContoh id
embeddingModel embeddingbge-m3, qwen3-embedding-0.6b
rerankModel rerankbge-reranker-base
moderationModel moderasi(saat ini kosong, lihat Moderations)
systemoneModel System Onejev-1-13-free

Nilai yang tidak dikenali mengembalikan 400. Parameter tanpa nilai, atau nilai kosong, kembali ke perilaku bawaan (model chat saja, identik dengan pemanggilan tanpa parameter). Setiap halaman dokumentasi modality di atas menjelaskan endpoint (POST /v1/embeddings, /v1/rerank, /v1/moderations, /v1/systemone) yang memakai id dari sini.

Terminal window
curl https://kenari.id/v1/models?modality=embedding

Satu model bisa punya versi berbayar dan gratis sekaligus. Versi gratis memakai id yang sama dengan akhiran :free, ditagih Rp 0, dengan batas request per akun per menit. Pakai step-3-7-flash untuk versi berbayar (dari saldo) atau step-3-7-flash:free untuk versi gratis. Keduanya muncul di GET /v1/models. Melewati batas RPM mengembalikan HTTP 429. Selain batas per menit, ada jatah request per hari yang bertingkat menurut status akun (baru, sudah top up, atau berlangganan). Lane ini best-effort, tanpa jaminan kecepatan atau ketersediaan yang sama dengan model berbayar. Lihat Penagihan & Rupiah untuk rincian tingkatan dan kode 429-nya.

Harga di tabel ini diambil langsung dari GET /v1/models dan selalu sama dengan yang ditagih. Angka dalam Rupiah per 1 juta token. Model khusus, yaitu gambar, audio, embedding, rerank, dan System One, punya tabelnya sendiri di bawah tabel token, dikelompokkan per jenis lengkap dengan satuannya. Tabel itu memakai ?modality= untuk jenis yang memang tidak muncul di daftar tanpa parameter.

GET /api/public/pricing juga publik. Endpoint itu menuliskan setiap id katalog yang dijual, termasuk versi lama dalam satu keluarga dan saudara :free. Baris embed, rerank, dan moderasi tidak masuk feed ini. Baris gambar dan suara tetap masuk. Untuk baris khusus itu dan sisa katalog, pakai GET /v1/models.

Harga model live

Memuat harga...