Dokumentasi
Kiosapi.id 100% OpenAI-compatible. Pakai SDK/klien OpenAI apa pun — cukup ganti base URL & API key.
1. Dapatkan API key
Masuk ke dashboard → API Keys, beri nama (mis. “Cursor”), klik Buat key, lalu salin kios_live_… (ditampilkan sekali). Bisa juga generate otomatis dari halaman Chat.
2. Setel base URL
Di Cursor/Windsurf: Settings → Models → OpenAI API → Override base URL.
Base URL : https://api.kiosapi.id/v1
API Key : kios_live_xxxxxxxxxxxx3. Contoh request
curl
curl https://api.kiosapi.id/v1/chat/completions \
-H "Authorization: Bearer kios_live_xxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-sonnet-4-6",
"messages": [{ "role": "user", "content": "Halo!" }]
}'Python (SDK OpenAI)
from openai import OpenAI
client = OpenAI(
base_url="https://api.kiosapi.id/v1",
api_key="kios_live_xxxx",
)
resp = client.chat.completions.create(
model="openai/gpt-4o",
messages=[{"role": "user", "content": "Halo!"}],
)
print(resp.choices[0].message.content)JavaScript / TypeScript
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.kiosapi.id/v1",
apiKey: "kios_live_xxxx",
});
const resp = await client.chat.completions.create({
model: "groq/llama-3.3-70b",
messages: [{ role: "user", content: "Halo!" }],
});
console.log(resp.choices[0].message.content);4. Streaming
Tambahkan "stream": true untuk respons token-by-token (SSE), seperti OpenAI.
stream = client.chat.completions.create(
model="deepseek/deepseek-v4-flash",
messages=[{"role": "user", "content": "Tulis puisi singkat"}],
stream=True,
)
for chunk in stream:
print(chunk.choices[0].delta.content or "", end="")5. Model & harga
Lihat harga lengkap di tabel harga. Endpoint GET /v1/models mengembalikan daftar model. Klik ID untuk menyalin — tempel persis seperti itu sebagai nama model di Cursor/Windsurf.
6. Saldo & top-up
Model gratis tak memotong saldo (dibatasi 5 request/menit & panjang output). Model berbayar memotong saldo rupiah per token. Isi saldo (QRIS, e-wallet, virtual account, kartu) mulai Rp10.000 — saldo masuk otomatis setelah bayar.
7. Batas & error
- • Rate limit free: 5 req/menit · paid: 60 req/menit (HTTP 429).
- • Free tier: maksimal output ~2048 token & input ~24k karakter per request.
- • 401 = API key salah · 400 = model tak dikenal · 402 = saldo kurang.