Dokumentasi Slave Ai
Gateway API yang kompatibel dengan OpenAI dan Anthropic SDK. Cukup ganti base URL, dan semua model AI premium bisa diakses dengan harga jauh lebih murah.
Quick Start
Mulai menggunakan Slave Ai dalam 3 langkah:
- Daftar akun — Daftar gratis dengan Google. Tidak perlu kartu kredit.
- Top up saldo — Buka halaman Top Up, masukkan nominal minimal $1, lalu bayar otomatis melalui QRIS atau transfer bank di Mayar. Sistem memeriksa pembayaran dan menambahkan saldo secara otomatis setelah transaksi berstatus lunas.
- Buat API key — Generate key di halaman API Keys dashboard. Copy key tersebut — hanya muncul sekali.
Setelah punya API key, tinggal ganti base_url di kode Anda:
from openai import OpenAI client = OpenAI( base_url="https://slaveai.my.id/v1", api_key="sk-slave-..." ) response = client.chat.completions.create( model="deepseek-v4-flash", messages=[{"role": "user", "content": "Halo!"}] ) print(response.choices[0].message.content)
model dengan model ID mana pun yang didukung.
Autentikasi
Setiap request membutuhkan API key yang dikirim sebagai header. Dua format berikut sama-sama diterima di semua endpoint:
# Format 1: Bearer Token (OpenAI style) Authorization: Bearer sk-slave-... # Format 2: x-api-key (Anthropic style) x-api-key: sk-slave-...
Endpoint & Base URL
Slave Ai menyediakan tiga endpoint yang kompatibel dengan SDK populer:
| Endpoint | Kompatibel dengan | Base URL |
|---|---|---|
/v1/chat/completions |
OpenAI SDK, Cursor, Cline, OpenCode | https://slaveai.my.id |
/v1/messages |
Anthropic SDK, Claude Code | https://slaveai.my.id |
/v1/responses |
OpenAI Responses API (Codex) | https://slaveai.my.id |
https://slaveai.my.id/v1 sebagai base_url. Untuk Claude Code CLI, gunakan root URL https://slaveai.my.id (tanpa /v1).
Model
Berikut adalah model yang tersedia. Gunakan model ID (kolom kiri) di parameter model request Anda. Lihat harga lengkap di halaman model.
| Model ID | Provider | Status | Explore |
|---|---|---|---|
claude-fable-5 | Anthropic | Aktif | Go to Official → |
claude-opus-5 | Anthropic | Aktif | Go to Official → |
claude-sonnet-5 | Anthropic | Aktif | Go to Official → |
deepseek-chat | DeepSeek | Aktif | Go to Official → |
deepseek-reasoner | DeepSeek | Aktif | Go to Official → |
deepseek-v4-flash | DeepSeek | Aktif | Go to Official → |
deepseek-v4-pro | DeepSeek | Aktif | Go to Official → |
gemini-2.5-flash | Aktif | Go to Official → | |
gemini-2.5-pro | Aktif | Go to Official → | |
gpt-5.6-luna | OpenAI | Aktif | Go to Official → |
gpt-5.6-sol | OpenAI | Aktif | Go to Official → |
gpt-5.6-tera | OpenAI | Aktif | Go to Official → |
kimi-k2 | Moonshot | Aktif | Go to Official → |
kimi-k2.5 | Moonshot | Aktif | Go to Official → |
kimi-k3 | Moonshot | Aktif | Go to Official → |
Parameter Request
Slave Ai adalah proxy transparan: kirim body native sesuai endpoint yang Anda gunakan. Berikut field umum yang tersedia:
| Field | API | Deskripsi |
|---|---|---|
model | both | Model ID dari tabel di atas. Wajib. |
messages | both | Array pesan (role + content). Wajib untuk chat. |
max_tokens | Anthropic | Maksimum token output. Wajib di /v1/messages. |
max_completion_tokens | OpenAI | Maksimum token output (GPT). Opsional. |
stream | both | true = SSE stream. Default false. |
system | Anthropic | System prompt (string atau array of blocks). |
temperature | both | Sampling temperature. Diabaikan untuk model thinking. |
top_p | both | Nucleus sampling. |
tools | both | Definisi function/tool — lihat Tool Calling. |
reasoning_effort | OpenAI | Depth thinking: none · low · medium · high · xhigh. |
input | Responses | Input untuk /v1/responses (string atau item array). |
Response Shape
Response yang Anda terima adalah bentuk native dari endpoint yang dipanggil. Contoh non-streaming via /v1/chat/completions:
{
"id": "chatcmpl-9a8b...",
"object": "chat.completion",
"model": "deepseek-v4-flash",
"choices": [{
"index": 0,
"message": {
"role": "assistant",
"content": "Halo! Ada yang bisa saya bantu?"
}
}],
"usage": {
"prompt_tokens": 12,
"completion_tokens": 10,
"total_tokens": 22
}
}
Response /v1/messages (Anthropic) mengembalikan format Anthropic native. Response /v1/responses mengembalikan format Responses API. Model ID yang muncul di response adalah model yang Anda request — bukan alias internal.
Streaming (SSE)
Aktifkan streaming dengan set stream: true di body request. Anda akan menerima Server-Sent Events (SSE):
curl https://slaveai.my.id/v1/chat/completions \ -H "Authorization: Bearer sk-slave-..." \ -H "Content-Type: application/json" \ -d '{ "model": "deepseek-v4-flash", "messages": [{"role": "user", "content": "Streaming haiku"}], "stream": true }'
Untuk /v1/messages (Anthropic), stream mengirimkan event content_block_delta dan message_stop. Untuk /v1/chat/completions (OpenAI), stream mengirimkan data: ... chunks dengan choices[0].delta. Gateway Slave Ai menerjemahkan secara transparan — klien Anthropic yang streaming model GPT tetap menerima event Anthropic.
stream=True (Python) atau stream: true (JS). SDK otomatis menangani parsing SSE.
Tool / Function Calling
Slave Ai meneruskan parameter tools dan tool_choice pada endpoint yang mendukungnya. Hasil bergantung pada kemampuan model dan upstream. Contoh OpenAI-style:
{
"model": "claude-sonnet-5",
"messages": [{"role": "user", "content": "Cuaca di Jakarta?"}],
"tools": [{
"type": "function",
"function": {
"name": "get_weather",
"description": "Dapatkan cuaca terkini untuk suatu kota",
"parameters": {
"type": "object",
"properties": {
"city": {"type": "string"}
},
"required": ["city"]
}
}
}]
}
Untuk Anthropic endpoint /v1/messages, gunakan format tools Anthropic (field input_schema). Gateway akan menerjemahkan ke format yang dimengerti model tujuan.
Vision (Images)
Input gambar tersedia pada model yang mendukung vision. Kemampuan dapat berbeda per model; lakukan tes pada model tujuan sebelum dipakai di produksi. Untuk OpenAI SDK, kirim image_url:
response = client.chat.completions.create(
model="deepseek-v4-flash",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "Apa isi gambar ini?"},
{"type": "image_url", "image_url": {"url": "https://..."}}
]
}]
)
Untuk Anthropic SDK, kirim sebagai image block dengan source base64:
response = client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
messages=[{
"role": "user",
"content": [
{"type": "image", "source": {
"type": "base64",
"media_type": "image/png",
"data": "<BASE64>"
}},
{"type": "text", "text": "Apa isi gambar ini?"}
]
}]
)
Reasoning Effort
Kontrol seberapa dalam model "berpikir" sebelum menjawab. Semakin tinggi effort, semakin banyak token reasoning yang dihasilkan — dan semakin dalam analisisnya.
| Model | Field | Nilai |
|---|---|---|
| GPT-5.6 Sol | reasoning_effort | none · low · medium · high · xhigh |
| Claude Opus 5 | output_config.effort | low · medium · high · xhigh · max |
{
"model": "gpt-5.6-sol",
"reasoning_effort": "high",
"messages": [{"role": "user", "content": "Buktikan ada tak terhingga bilangan prima"}]
}
Kode Error
| Kode | Arti | Solusi |
|---|---|---|
400 | Bad request / JSON tidak valid | Periksa body request dan field wajib. |
401 | API key tidak valid atau tidak dikirim | Verifikasi key di dashboard. Pastikan header Authorization terisi. |
402 | Saldo tidak mencukupi | Top up saldo via dashboard. |
403 | Akun suspended / model tidak diizinkan | Hubungi admin atau periksa allowed models key Anda. |
404 | Endpoint tidak ditemukan | Periksa base URL. Claude Code = root; SDK = /v1. |
413 | Body terlalu besar (>10 MB) | Kurangi konteks atau attachment. |
429 | Rate limit exceeded | Ikuti header Retry-After dan kurangi concurrency. |
500 | Internal server error | Coba lagi. Jika berlanjut, hubungi admin. |
502/503 | Upstream hiccup | Auto-retry. Coba lagi dalam beberapa saat. |
Rate Limits & Billing
Rate Limits
- 100 request/menit per akun (semua key berbagi kuota yang sama)
- 200 request/menit per IP
- Body maksimal 10 MB
Jika terkena limit, Anda akan menerima response 429 dengan pesan Rate limit exceeded dan header Retry-After. Klien harus menunggu sesuai nilai tersebut sebelum mencoba kembali.
Billing
Slave Ai menggunakan sistem pay-as-you-go. Tidak ada biaya bulanan atau komitmen. Cukup top up saldo dan gunakan sesuai kebutuhan.
- Semua model dibayar dari satu saldo yang sama
- Harga per 1 juta token — lihat tabel di halaman model
- Token cache dibaca dengan harga lebih murah (jika model mendukung)
- Riwayat pemakaian dan sisa saldo bisa dipantau real-time di dashboard
deepseek-v4-flash atau gpt-5.6-luna) untuk tugas sederhana. Simpan model flagship untuk tugas yang benar-benar membutuhkan reasoning dalam.
Client Setup
Panduan konfigurasi untuk berbagai tools dan SDK. Pada dasarnya sama: ganti base URL dan API key.
Claude Code Anthropic native
Claude Code CLI dan VS Code extension. Gunakan root URL (tanpa /v1):
export ANTHROPIC_BASE_URL=https://slaveai.my.id export ANTHROPIC_AUTH_TOKEN=sk-slave-... export ANTHROPIC_MODEL=claude-sonnet-5
Untuk VS Code, tambahkan ke settings.json:
{
"claudeCode.disableLoginPrompt": true,
"claudeCode.environmentVariables": [
{ "name": "ANTHROPIC_BASE_URL", "value": "https://slaveai.my.id" },
{ "name": "ANTHROPIC_AUTH_TOKEN", "value": "sk-slave-..." },
{ "name": "ANTHROPIC_MODEL", "value": "claude-sonnet-5" }
]
}
OpenAI SDK OpenAI compatible
from openai import OpenAI client = OpenAI( base_url="https://slaveai.my.id/v1", api_key="sk-slave-..." )
import OpenAI from "openai"; const client = new OpenAI({ baseURL: "https://slaveai.my.id/v1", apiKey: "sk-slave-..." });
Anthropic SDK Anthropic native
from anthropic import Anthropic client = Anthropic( base_url="https://slaveai.my.id/v1", api_key="sk-slave-..." )
Cursor OpenAI compatible
Tambahkan OpenAI-compatible custom provider di Settings → Models:
- Base URL:
https://slaveai.my.id/v1 - API Key:
sk-slave-... - Model ID:
deepseek-v4-flash(atau model lain)
9Router advanced
Self-hosted LLM router. Tambahkan Slave Ai sebagai custom provider:
- Type: OpenAI Compatible
- Prefix:
slave - Base URL:
https://slaveai.my.id/v1 - API Key:
sk-slave-... - Models:
deepseek-v4-flash,claude-sonnet-5,gpt-5.6-luna(dan model aktif lainnya)
9Router akan mengekspos model sebagai slave/MODEL_ID.
LiteLLM OpenAI compatible
# litellm config.yaml
model_list:
- model_name: deepseek-v4-flash
litellm_params:
model: openai/slave-deepseek-v4-flash
api_base: https://slaveai.my.id/v1
api_key: sk-slave-...
- model_name: claude-sonnet-5
litellm_params:
model: openai/slave-claude-sonnet-5
api_base: https://slaveai.my.id/v1
api_key: sk-slave-...
cURL raw HTTP
Model ID yang sama berlaku di kedua endpoint:
curl https://slaveai.my.id/v1/chat/completions \ -H "Authorization: Bearer sk-slave-..." \ -H "Content-Type: application/json" \ -d '{ "model": "deepseek-v4-flash", "messages": [{"role": "user", "content": "Halo!"}] }'
curl https://slaveai.my.id/v1/messages \ -H "x-api-key: sk-slave-..." \ -H "anthropic-version: 2023-06-01" \ -H "Content-Type: application/json" \ -d '{ "model": "claude-sonnet-5", "max_tokens": 1024, "messages": [{"role": "user", "content": "Halo!"}] }'
FAQ
Apakah data saya aman?
Request API biasa dicatat sebagai metadata pemakaian tanpa menyimpan isi percakapan. Percakapan Playground disimpan sementara untuk riwayat sesi dan otomatis dihapus setelah 24 jam. API key di-hash sebelum disimpan.
Model apa yang tersedia?
Lihat daftar lengkap di halaman model. Kami terus menambah model baru secara berkala.
Bagaimana cara top up?
Login ke dashboard, buka halaman Top Up, masukkan nominal minimal $1 dan referensi transaksi. Admin akan memverifikasi sebelum saldo ditambahkan.
Apakah ada batas pemakaian?
Tidak ada batas pemakaian. Gunakan sesuai kebutuhan.
Bisa ganti model di tengah percakapan?
Tidak. Setiap request adalah independen. Ganti parameter model di request berikutnya.
Ada yang tidak berfungsi?
Hubungi admin melalui kanal dukungan yang diberikan saat onboarding. Sertakan waktu kejadian, model, dan request ID tanpa membagikan API key.