# Cara Membuat & Memakai API Key OpenRouter (Panduan 2026)

- URL: https://komunitech.com/blog/tutorial/cara-membuat-memakai-api-key-openrouter-panduan-2026/
- Diterbitkan: 2026-09-07
- Diperbarui: 2026-10-14
- Penulis: Priyo Harjiyono
- Penerbit: KomuniTech (https://komunitech.com)

---

**tl;dr** — API key OpenRouter dibuat di halaman Keys setelah kamu punya akun, lalu dipakai sebagai Bearer token di header Authorization. Endpointnya https://openrouter.ai/api/v1/chat/completions dan mengikuti spesifikasi API OpenAI, jadi kode lama yang sudah memakai OpenAI SDK cukup diganti base URL dan kuncinya. Satu kunci itu membuka akses ke 458 model dari puluhan penyedia, termasuk 15 model bervarian :free (cek [endpoint publik /api/v1/models](https://openrouter.ai/api/v1/models) per 12 Oktober 2026) yang tidak memotong saldo. Dokumentasi resmi OpenRouter menyebut kunci mereka lebih berkuasa dibanding kunci provider biasa karena bisa diberi batas kredit dan dipakai dalam alur OAuth — alasan kenapa penyimpanannya tidak boleh sembarangan.

💡 Key Takeaway

- **Satu kunci, ratusan model.** Ganti nilai model saja untuk pindah dari GPT ke Claude atau Gemini.

- **Drop-in replacement OpenAI.** Cukup arahkan base_url ke https://openrouter.ai/api/v1.

- **Beri batas kredit per kunci** supaya satu aplikasi bocor tidak menghabiskan seluruh saldo.

- **Jangan tulis kunci di dalam kode.** Simpan di environment variable — OpenRouter memindai kunci yang bocor di GitHub.

Banyak orang berhenti di langkah pertama bukan karena kesulitan teknis, tapi karena bingung membedakan mana kunci untuk memanggil model dan mana kunci untuk mengelola akun. Panduan berikut membereskan urutannya dari membuat akun sampai panggilan pertamamu berhasil, lengkap dengan kesalahan umum yang bikin error 401 dan 402.

## Apa Fungsi API Key OpenRouter

OpenRouter berperan sebagai perantara: kamu memanggil satu alamat, mereka meneruskannya ke penyedia model yang sesuai. API key adalah identitas yang dipakai untuk menghitung pemakaian dan memotong saldo kreditmu. Kalau kamu masih menimbang antara gateway terkelola seperti ini atau router yang di-host sendiri, bandingkan dulu lewat [panduan memilih OpenRouter vs 9Router](https://komunitech.com/blog/riset/openrouter-vs-9router-panduan-memilih-ai-gateway-router-2026/).

Menurut [dokumentasi autentikasi OpenRouter](https://openrouter.ai/docs/api_reference/authentication), ada tiga metode autentikasi yang berlaku: cookie untuk antarmuka web dan chatroom, API key sebagai Bearer token untuk memanggil model, serta Management API key khusus untuk mengelola kunci secara programatis. Yang kamu butuhkan untuk menjalankan model adalah tipe kedua.

Keunggulan praktisnya terasa saat kamu ingin berpindah model. Tanpa gateway, mencoba Claude berarti mendaftar ke Anthropic, mengurus penagihan terpisah, dan menulis ulang pemanggilan API. Dengan satu kunci OpenRouter, perpindahan itu cuma soal mengganti satu string. Kami sudah membandingkan perbedaan karakter tiap model dalam ulasan [perbedaan model LLM Claude, GPT, dan Gemini](https://komunitech.com/blog/ai-agent/perbedaan-model-llm-claude-gpt-gemini-5-lainnya/) kalau kamu masih menimbang mau memakai yang mana.

## Cara Membuat API Key OpenRouter

Prosesnya empat langkah dan tidak sampai lima menit:

### 1. Buat akun

Daftar di openrouter.ai memakai email, akun Google, atau GitHub. Semua pengguna baru mendapat jatah percobaan kecil untuk mencoba layanan.

### 2. Buka halaman Keys

Masuk ke openrouter.ai/keys. Halaman ini yang disebut dokumentasi resmi sebagai tempat pembuatan kunci, terpisah dari halaman pengaturan kredit.

### 3. Beri nama dan batas kredit

Isi nama kunci sesuai peruntukannya — misalnya bot-cs-produksi atau eksperimen-lokal. Kolom batas kredit bersifat opsional tapi sangat disarankan diisi: nilai itu menjadi plafon maksimal yang bisa dihabiskan kunci tersebut. Kalau satu aplikasi bermasalah dan memanggil model berulang tanpa henti, kerugianmu berhenti di angka itu.

### 4. Salin sekali, simpan aman

Kunci ditampilkan sekali saat dibuat. Simpan ke pengelola kata sandi atau environment variable, jangan ke catatan biasa dan jangan langsung ditempel ke dalam kode.

## Cara Memakai API Key di Kode

Kunci dikirim sebagai Bearer token pada header Authorization. Berikut bentuk paling dasarnya lewat cURL:

curl https://openrouter.ai/api/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENROUTER_API_KEY" \
-d '{
"model": "google/gemma-4-31b-it:free",
"messages": [
{"role": "user", "content": "Halo, jelaskan apa itu AI Agent dalam dua kalimat."}
]
}'
Versi Python memakai OpenAI SDK yang sudah umum dipakai, cukup diarahkan ulang:

import os
from openai import OpenAI

client = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key=os.getenv("OPENROUTER_API_KEY"),
)

response = client.chat.completions.create(
model="google/gemma-4-31b-it:free",
messages=[
{"role": "user", "content": "Halo, jelaskan apa itu AI Agent dalam dua kalimat."}
],
)

print(response.choices[0].message.content)
Dua header opsional bisa ditambahkan: HTTP-Referer berisi URL situsmu dan X-OpenRouter-Title berisi nama aplikasi. Keduanya tidak memengaruhi hasil, hanya membuat aplikasimu muncul di papan peringkat OpenRouter.

OpenRouter juga menyediakan SDK resmi sendiri lewat paket @openrouter/sdk untuk TypeScript dan openrouter untuk Python, plus Agent SDK @openrouter/agent yang menangani perulangan percakapan multi-giliran dan eksekusi tool secara otomatis. Untuk kebutuhan sederhana, memanggil endpoint langsung sudah cukup.

## Memilih Model: Format Slug dan Varian

Nilai model memakai format penyedia/nama-model, contohnya google/gemma-4-31b-it. Daftar lengkapnya bisa diambil sendiri dari endpoint publik https://openrouter.ai/api/v1/models tanpa perlu autentikasi. Saat pemeriksaan terakhir kami pada 12 Oktober 2026, terdaftar 458 model di sana, 15 di antaranya varian :free.

Akhiran khusus mengubah perilaku routing, dan ini yang membedakan pemakaian dasar dari pemakaian cermat — [sumber: FAQ OpenRouter](https://openrouter.ai/docs/faq):

| Varian
| Efek
| Kapan dipakai

| :free
| Model gratis, rate limit rendah
| Belajar dan prototipe

| :nitro
| Prioritas penyedia tercepat
| Aplikasi interaktif, chat real-time

| :floor
| Prioritas penyedia termurah
| Pekerjaan batch, volume besar

| :exacto
| Prioritas keandalan pemanggilan tool
| Agent yang memanggil banyak fungsi

Varian :online yang dulu dipakai untuk menambahkan hasil pencarian web sudah berstatus usang menurut [dokumentasi varian :online](https://openrouter.ai/docs/guides/routing/model-variants/online), digantikan server tool openrouter:web_search. Kalau kamu menemukan tutorial lama yang masih memakainya, itu tanda tutorial tersebut belum diperbarui.

Varian :free punya batas sendiri. Batasnya bergantung pada total kredit yang pernah kamu beli, bukan saldo saat ini — [sumber: OpenRouter Limits](https://openrouter.ai/docs/api-reference/limits):

| Total kredit yang pernah dibeli
| Permintaan per menit
| Permintaan per hari

| Kurang dari 10
| 20
| 50

| Minimal 10
| 20
| 1.000

Daftar model gratis yang masih aktif berikut catatan limitnya kami rangkum terpisah di [daftar model gratis OpenRouter dan rate limit-nya](https://komunitech.com/blog/tutorial/model-gratis-openrouter-daftar-lengkap-rate-limit-2026/).

Pemilihan varian ini berdampak langsung ke ongkos. Komponen biaya di luar harga per token juga perlu dihitung — rinciannya ada di [hitungan biaya asli OpenRouter dan fee-nya](https://komunitech.com/blog/riset/berapa-biaya-asli-openrouter-fee-yang-perlu-kamu-hitung/). Menjalankan pekerjaan batch dengan :nitro berarti membayar penyedia termahal demi kecepatan yang tidak dibutuhkan siapa-siapa. Logika penghematan serupa berlaku di platform lain — pembahasan lengkap soal menekan biaya lewat pemilihan fitur ada di ulasan kami tentang [fitur Gemini API yang bikin agent lebih murah](https://komunitech.com/blog/tutorial/7-fitur-gemini-api-yang-jarang-dipakai-tapi-bikin-agent-lebih-murah-2026/).

💡 Key Takeaway

- **Slug model = penyedia/nama-model**, ambil daftar terbaru dari endpoint publik /api/v1/models.

- **Empat varian aktif:** :free, :nitro, :floor, :exacto — masing-masing mengubah cara permintaanmu dirutekan.

- **Varian :online sudah usang**, ganti dengan server tool pencarian web.

## Menyambungkan ke Tool Coding

Cara tercepat merasakan manfaat satu kunci untuk banyak model adalah memasangnya di editor. Pola pengaturannya seragam di hampir semua tool: cari bagian penyedia model, pilih OpenRouter atau opsi "OpenAI Compatible", isi base URL https://openrouter.ai/api/v1, tempel kunci, lalu tulis slug model.

Pola tersebut berlaku untuk Cline, Roo Code, Cursor, dan tool sejenis yang menerima endpoint kompatibel OpenAI. Kalau kamu ingin melihat langkah pengaturan yang serupa dalam bentuk lebih rinci, kami pernah menuliskannya untuk penyedia berbeda di panduan [cara connect Gemini API ke Cline dan Roo Code](https://komunitech.com/blog/tutorial/cara-connect-google-gemini-api-ke-cline-roo-code-coding-agent-2026/) — struktur pengisiannya sama, hanya nilai base URL dan kuncinya yang berbeda.

Untuk asisten coding yang mendukung MCP, OpenRouter menyediakan server terkelola di https://mcp.openrouter.ai/mcp sehingga asistenmu bisa membaca data langsung soal model yang tersedia, harganya, dan sisa saldomu alih-alih menebak dari data pelatihan lama. Konsep dasar protokolnya sudah kami bahas di artikel [MCP Server: apa itu dan kenapa AI Agent membutuhkannya](https://komunitech.com/blog/ai-agent/mcp-server-apa-itu-cara-kerja-ai-agent-2026/).

## Mengamankan Kunci dan Membaca Error

Dokumentasi resmi memberi peringatan tegas: kunci OpenRouter lebih berkuasa dibanding kunci model biasa, dan tidak boleh dikirim ke repositori publik. OpenRouter berstatus mitra pemindaian rahasia GitHub, sehingga kunci yang bocor akan terdeteksi dan pemiliknya diberi tahu lewat surel — [sumber: dokumentasi autentikasi OpenRouter](https://openrouter.ai/docs/api_reference/authentication). Kalau itu terjadi, langkah yang benar adalah menghapus kunci lama di halaman pengaturan lalu membuat yang baru.

Tiga kode error paling sering muncul dan artinya berbeda-beda:

- **401 Unauthorized** — kunci salah, kedaluwarsa, atau dinonaktifkan. Sering terjadi karena kata Bearer lupa ditulis sebelum kunci.

- **402 Payment Required** — saldo habis atau batas kredit kunci tersebut sudah tersentuh. Saldo akun yang minus juga memicu 402, termasuk saat memanggil model gratis — [sumber: OpenRouter Limits](https://openrouter.ai/docs/api-reference/limits). Cek lewat GET https://openrouter.ai/api/v1/key untuk melihat sisa kuota.

- **429 Too Many Requests** — melampaui batas permintaan. Tangani dengan jeda bertingkat dan patuhi header Retry-After jika ada.

Kebiasaan menaruh kunci di environment variable, bukan di dalam berkas kode, menutup sebagian besar risiko ini sejak awal. Di Komunitech, pengelolaan kredensial semacam ini kami ajarkan sebagai bagian dari workshop OpenClaw untuk membangun Karyawan AI, karena agent yang punya akses API tanpa pagar pengaman adalah risiko operasional yang nyata, bukan sekadar urusan teknis.

Kalau kunci OpenRouter mau dipakai sebagai otak AI Agent di OpenClaw, langkah login, isi config.json5, dan cara ganti modelnya kami bahas terpisah di [cara setting API key OpenRouter di OpenClaw](https://komunitech.com/blog/tutorial/cara-setting-openrouter-openclaw-2026/).

## Pertanyaan yang Sering Ditanya

### Apakah API key OpenRouter gratis?

Membuat kuncinya gratis dan tidak perlu kartu kredit. Yang berbayar adalah pemakaian model. Kamu tetap bisa memanggil model berlabel :free tanpa mengisi saldo, dengan batas 20 permintaan per menit dan 50 permintaan per hari. Batas harian naik jadi 1.000 setelah total pembelian kreditmu minimal 10 — [sumber: OpenRouter Limits](https://openrouter.ai/docs/api-reference/limits).

### Kenapa muncul error 401 padahal kunci sudah benar?

Penyebab paling umum adalah format header. Nilainya harus Bearer <kunci>, bukan kuncinya saja. Penyebab kedua adalah spasi atau baris baru yang ikut tersalin saat menempel kunci.

### Bisakah satu API key dipakai untuk beberapa aplikasi?

Bisa, tapi risikonya lebih besar dari manfaatnya. Buat kunci terpisah per aplikasi dengan batas kredit masing-masing, supaya pemakaian bisa dilacak per aplikasi dan satu kebocoran tidak memaksamu mengganti kunci di semua tempat sekaligus.

### Apakah kode OpenAI lama perlu ditulis ulang?

Tidak. OpenRouter mengimplementasikan spesifikasi API OpenAI untuk endpoint /chat/completions, sehingga cukup mengubah base_url dan api_key. Struktur permintaan dan responsnya tetap sama.

### Bagaimana cara mengecek sisa saldo lewat API?

Kirim permintaan GET ke https://openrouter.ai/api/v1/key dengan kunci yang sama. Responsnya memuat limit_remaining, total pemakaian, serta rincian pemakaian harian, mingguan, dan bulanan.

### Kenapa muncul error 402 padahal pakai model gratis?

Biasanya karena saldo akunmu minus. Dokumentasi OpenRouter menyebut saldo negatif memicu 402 untuk semua model, termasuk varian :free. Isi kredit sampai saldo kembali di atas nol, lalu coba lagi — [sumber: OpenRouter Limits](https://openrouter.ai/docs/api-reference/limits).

### Apa itu BYOK di OpenRouter?

BYOK (bring your own key) artinya kamu memasang API key dari penyedia model sendiri, misalnya Anthropic atau Google, di pengaturan OpenRouter. Permintaan lewat key itu dikenai biaya 5% dari harga normal model tersebut di OpenRouter, dipotong dari kredit OpenRouter, dengan jatah gratis yang besarnya tergantung paket — [sumber: dokumentasi BYOK OpenRouter](https://openrouter.ai/docs/guides/overview/auth/byok).

## Catatan

Langkah dan angka di atas mengacu pada dokumentasi resmi OpenRouter per Oktober 2026. Antarmuka dan kebijakan platform dapat berubah — periksa dokumentasi resminya bila ada perbedaan. Komunitech tidak berafiliasi dengan OpenRouter dan tidak menerima kompensasi apa pun dari layanan tersebut.

## Referensi

- [OpenRouter — Authentication](https://openrouter.ai/docs/api_reference/authentication) (Bearer token, metode autentikasi, kebijakan kunci bocor)

- [OpenRouter — Quickstart](https://openrouter.ai/docs/quickstart) (contoh kode, SDK resmi, MCP server)

- [OpenRouter — FAQ](https://openrouter.ai/docs/faq) (varian model, dukungan SDK, spesifikasi endpoint)

- [OpenRouter — Limits](https://openrouter.ai/docs/api_reference/limits) (kode error 401/402/429, pengecekan sisa kredit)

- [OpenRouter — Daftar model publik](https://openrouter.ai/api/v1/models) (jumlah model terdaftar)

- [OpenRouter — BYOK](https://openrouter.ai/docs/guides/overview/auth/byok) (biaya dan perilaku key penyedia sendiri)

- [OpenRouter — Varian :online](https://openrouter.ai/docs/guides/routing/model-variants/online) (status usang)
