Dokumentasi API
Integrasi OpenAI-compatible lewat satu base URL.
Gunakan API key dari dashboard user. Header, request body, dan respons mengikuti format OpenAI-compatible untuk endpoint yang sudah aktif.
https://router.ranpaycash.com/v1
Authentication
Kirim API key user pada header Authorization.
Authorization: Bearer sk-your-api-key
Content-Type: application/json
Endpoint aktif
Endpoint berikut sudah tersedia di gateway saat ini.
List models
Mengambil katalog model aktif yang bisa dipakai user.
Chat completions
Mengirim request chat OpenAI-compatible, non-stream atau stream.
Embeddings
Membuat embeddings dari input teks melalui provider terpilih.
Chat completions
Contoh request non-stream menggunakan curl.
curl https://router.ranpaycash.com/v1/chat/completions \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.5",
"messages": [
{"role": "user", "content": "Tulis ringkasan singkat tentang Laravel"}
],
"stream": false
}'
JavaScript SDK style
Gunakan base URL gateway pada OpenAI-compatible client.
import OpenAI from "openai";
const client = new OpenAI({
apiKey: "sk-your-api-key",
baseURL: "https://router.ranpaycash.com/v1",
});
const response = await client.chat.completions.create({
model: "gpt-5.5",
messages: [{ role: "user", content: "Halo" }],
});
Embeddings
Endpoint embeddings memakai header auth yang sama.
curl https://router.ranpaycash.com/v1/embeddings \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "text-embedding-3-small",
"input": "AI gateway dengan billing token"
}'
Error format
Gateway mengembalikan error OpenAI-compatible dan menyembunyikan error mentah upstream.
{
"error": {
"message": "Insufficient balance.",
"type": "gateway_error",
"code": "insufficient_balance"
}
}