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).
curl https://kenari.id/v1/modelsSetiap 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.
Filter ?modality=
Section titled “Filter ?modality=”Gunakan parameter query modality untuk mendaftar model khusus:
Nilai modality | Isi daftar | Contoh id |
|---|---|---|
embedding | Model embedding | bge-m3, qwen3-embedding-0.6b |
rerank | Model rerank | bge-reranker-base |
moderation | Model moderasi | (saat ini kosong, lihat Moderations) |
systemone | Model System One | jev-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.
curl https://kenari.id/v1/models?modality=embeddingVersi gratis
Section titled “Versi gratis”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 aktif
Section titled “Harga aktif”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...
Model khusus
Model ini punya satu harga dengan satuannya sendiri, jadi kolom token di atas tidak berlaku untuknya.