Lewati ke konten
kenari.

Mulai cepat

Tiga langkah dari nol ke request pertama. Tidak perlu kartu kredit luar negeri, tidak perlu menunggu persetujuan.

Masuk ke dashboard, buka API keys, lalu klik Buat key. Key diawali kn- dan hanya muncul sekali, jadi salin dan simpan saat itu juga. Satu key berlaku untuk semua model, semua provider, dan kedua API (OpenAI dan Anthropic).

Buka Saldo, lalu top up via QRIS mulai Rp 1.000. Saldo masuk begitu pembayaran lunas. Penagihan dihitung per token dalam Rupiah, jadi Rp 1.000 sudah cukup untuk mencoba model murah ribuan kali.

Lewati langkah ini kalau kamu hanya ingin mencoba: pakai model gratis. Tambahkan akhiran :free pada id model (misalnya step-3-7-flash:free), request tidak memotong saldo, dengan batas request per menit.

Satu perintah curl yang langsung mengembalikan jawaban. Ganti kn-... dengan key kamu.

Terminal window
curl https://kenari.id/v1/chat/completions \
-H "Authorization: Bearer kn-..." \
-H "Content-Type: application/json" \
-d '{
"model": "step-3-7-flash:free",
"messages": [{"role": "user", "content": "Halo!"}]
}'

Cek koneksi dari respons: kalau body JSON berisi choices[0].message.content dengan teks jawaban, koneksi bekerja. 401 invalid api key berarti kn-... salah atau disalin terpotong. model_not_found berarti id salah ketik. Pakai persis step-3-7-flash:free atau pilih dari Model & harga.

Selesai. Kamu baru saja memakai beberapa Rupiah (atau tidak sama sekali untuk model :free) dan mendapat satu completion.

Base URL https://kenari.id/v1 adalah pengganti langsung untuk https://api.openai.com/v1. Arahkan SDK OpenAI ke sana, sisa kodemu tidak perlu diubah.

from openai import OpenAI
client = OpenAI(base_url="https://kenari.id/v1", api_key="kn-...")
r = client.chat.completions.create(
model="step-3-7-flash:free",
messages=[{"role": "user", "content": "Halo!"}],
)
print(r.choices[0].message.content)
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://kenari.id/v1", apiKey: "kn-..." });
const res = await client.chat.completions.create({
model: "step-3-7-flash:free",
messages: [{ role: "user", content: "Halo!" }],
});
console.log(res.choices[0].message.content);

Cek koneksi dari kode: kalau choices[0].message.content ada, koneksi bekerja. Lihat Chat completions untuk parameter lengkap.

  • CLI kenari: pasang @kenarihq/cli, login sekali, lalu pakai model native dan model kenari per-role dalam satu sesi Claude Code atau Codex.
  • Autentikasi & key: cara key dipakai dan dikelola.
  • Chat completions: parameter dan bentuk response lengkap.
  • Model & harga: daftar model dan harga per token yang aktif sekarang.
  • Editor & agen AI: setel Claude Code, Codex, OpenCode, dan lainnya.
  • Untuk agen AI: llms.txt, openapi.json, server MCP, dan cara memakai kenari dari Claude Code.
GejalaPenyebabSolusi
401 invalid api keykn-... salah atau terpotong saat disalinbuat key baru di dashboard, salin utuh
model_not_foundid salah ketikpakai persis step-3-7-flash:free, atau pilih dari Model & harga
402 insufficient_balancemodel berbayar dipakai dengan saldo Rp 0ganti ke model :free, atau top up QRIS dari Rp 1.000
405 saat base URL https://kenari.id/v1/v1/... atau tanpa /v1base URL salah bentukbase URL harus persis https://kenari.id/v1