Gateway OpenAI-compatible. Ganti base URL dan API key — kode Anda yang sudah ada langsung jalan.
1. Daftar & buat API key di dashboard.
2. Kirim request ke /v1/chat/completions.
3. Selesai — usage, kredit, dan monitoring tercatat otomatis.
Gunakan header Authorization: Bearer <KEY_ID>:<SECRET>. Key ID dan secret diberikan satu kali saat pembuatan.
Authorization: Bearer rai_live_xxxxxxxxxxxxxxxxxxxxxxxx Content-Type: application/json
{
"model": "oa/gpt-5.6",
"messages": [
{ "role": "system", "content": "You are a helpful assistant." },
{ "role": "user", "content": "Hello" }
],
"temperature": 0.7,
"max_tokens": 1024
}{
"id": "chatcmpl_...",
"model": "oa/gpt-5.6",
"choices": [
{ "message": { "role": "assistant", "content": "Hello! How can I help?" } }
],
"usage": {
"prompt_tokens": 20,
"completion_tokens": 50,
"total_tokens": 70,
"credits_charged": 0.0012,
"balance_remaining": 24.9988
},
"provider_used": "openai"
}curl /v1/models \
-H "Authorization: Bearer rai_live_xxxxxxxxxxxxxxxxxxxxxxxx"{
"error": {
"message": "Rate limit exceeded. Try again later.",
"type": "rate_limited",
"code": "rate_limited"
}
}| Code | Arti | Aksi |
|---|---|---|
| 401 | API key tidak valid / expired | Periksa key |
| 402 | Kredit tidak cukup | Top up kredit |
| 403 | IP tidak whitelist / model premium | Atur whitelist / upgrade plan |
| 429 | Rate limit / quota habis | Lihat header Retry-After |
| 502 | Provider gagal (fallback habis) | Coba lagi / cek monitoring |
curl /v1/chat/completions \
-H "Authorization: Bearer rai_live_xxxxxxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "oa/gpt-5.6",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
]
}'import requests
url = "/v1/chat/completions"
headers = {
"Authorization": "Bearer rai_live_xxxxxxxxxxxxxxxxxxxxxxxx",
"Content-Type": "application/json",
}
data = {
"model": "oa/gpt-5.6",
"messages": [{"role": "user", "content": "Hello!"}],
}
res = requests.post(url, json=data, headers=headers)
print(res.json()["choices"][0]["message"]["content"])const res = await fetch("/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer rai_live_xxxxxxxxxxxxxxxxxxxxxxxx",
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "oa/gpt-5.6",
messages: [{ role: "user", content: "Hello!" }],
}),
});
const data = await res.json();
console.log(data.choices[0].message.content);<?php
$ch = curl_init('/v1/chat/completions');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer rai_live_xxxxxxxxxxxxxxxxxxxxxxxx',
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'model' => 'oa/gpt-5.6',
'messages' => [['role' => 'user', 'content' => 'Hello!']],
]),
]);
$res = json_decode(curl_exec($ch), true);
echo $res['choices'][0]['message']['content'];const OpenAI = require('openai');
const client = new OpenAI({
baseURL: '/v1',
apiKey: 'rai_live_xxxxxxxxxxxxxxxxxxxxxxxx',
});
const res = await client.chat.completions.create({
model: 'oa/gpt-5.6',
messages: [{ role: 'user', content: 'Hello!' }],
});
console.log(res.choices[0].message.content);