Dokumentasi Integrasi API Modelin.
Gunakan SDK resmi OpenAI di Python, TypeScript/Node.js, atau cURL untuk memanggil Claude Sonnet 4.6, Gemini 2.5 Flash, xAI Grok 4.5, dan DeepSeek R1 melalui satu API Key tunggal.
- Base URL
- https://api.modelin.id/v1
- Kompatibilitas
- OpenAI SDK (Python & Node.js)
- Protokol
- HTTPS TLS 1.3 & Server-Sent Events
Integrasi 3 Langkah Tanpa Mengubah Kode Lama
- 01
Dapatkan API Key
Buat key baru berawalan sk-modelin-live- di dashboard kredensial.
- 02
Pilih Model ID
Gunakan ID model terverifikasi (misal gemini-2-5-flash atau claude-sonnet-4-6).
- 03
Arahkan Base URL
Atur base_url='https://api.modelin.id/v1' pada SDK yang Anda gunakan.
pip install openai)Python - Integrasi Chat Completion
from openai import OpenAI
# Inisialisasi client OpenAI resmi dengan endpoint Modelin
client = OpenAI(
base_url="https://api.modelin.id/v1",
api_key="sk-modelin-live-..."
)
# Panggil model AI apa pun yang terdaftar
response = client.chat.completions.create(
model="claude-sonnet-4-6", # atau "gemini-2-5-flash", "grok-4.5"
messages=[
{"role": "system", "content": "Anda adalah asisten AI yang ramah dan to the point."},
{"role": "user", "content": "Rekomendasikan stack backend untuk aplikasi AI real-time."}
]
)
print(response.choices[0].message.content)npm install openai)TypeScript - Integrasi Chat Completion
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.modelin.id/v1",
apiKey: process.env.MODELIN_API_KEY, // sk-modelin-live-...
});
async function main() {
const response = await client.chat.completions.create({
model: "gemini-2.5-flash", // Bobot 0.2x (hemat 5x lipat!)
messages: [{ role: "user", content: "Halo dari Node.js!" }],
});
console.log(response.choices[0].message.content);
}
main();cURL - HTTP POST Request
curl https://api.modelin.id/v1/chat/completions \
-H "Authorization: Bearer $MODELIN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-2.5-flash",
"messages": [
{ "role": "user", "content": "Jelaskan konsep arsitektur transformer dalam 2 kalimat." }
],
"temperature": 0.7
}'Header Autentikasi Bearer Token
Setiap request wajib menyertakan header Authorization dengan format berikut:
Header Autentikasi Standar
Authorization: Bearer sk-modelin-live-xxxxxxxxxxxxChat Completions
Endpoint standar OpenAI-compatible untuk memanggil seluruh model AI terverifikasi di server Modelin.
/v1/chat/completions- model
- stringwajib
- ID model tujuan, misalnya 'claude-sonnet-4-6', 'gemini-2-5-flash', 'grok-4.5', atau 'deepseek-r1-distill-32b'.
- messages
- arraywajib
- Array percakapan berformat [{ role: 'system'|'user'|'assistant', content: '...' }].
- stream
- booleanopsional
- Aktifkan streaming Server-Sent Events (SSE). Nilai bawaan adalah false.
- temperature
- numberopsional
- Tingkat kreativitas respons model (0.0 - 2.0). Nilai bawaan adalah 0.7.
- max_tokens
- numberopsional
- Batas maksimum token output yang digenerate oleh model.
Daftar Model AI & Bobot Multiplier Token
Seluruh model berikut terverifikasi 100% aktif di cluster server. Masukkan nilai parameter pada kolom "Model ID":
claude-sonnet-4-6claude-opus-4-6-thinkinggemini-2.5-flashgrok-4.5deepseek-r1-distill-32bllama-3.3-70bqwen-2.5-coder-32bImplementasi Streaming (Server-Sent Events)
Cukup tambahkan stream=True untuk menerima potongan token secara real-time seperti ChatGPT dan Claude:
Streaming SSE di Python (OpenAI SDK)
from openai import OpenAI
client = OpenAI(
base_url="https://api.modelin.id/v1",
api_key="sk-modelin-live-..."
)
# Streaming SSE chunk-by-chunk secara real-time
stream = client.chat.completions.create(
model="claude-sonnet-4-6",
messages=[{"role": "user", "content": "Tuliskan cerita fiksi ilmiah 50 kata."}],
stream=True
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)Format Respons JSON Standar
Respons menyertakan object usage serta metadata modelin untuk sisa kuota token Anda:
Contoh Respons Chat Completion
{
"id": "chatcmpl-mdln-9a66bb62",
"object": "chat.completion",
"created": 1788528236,
"model": "claude-sonnet-4-6",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Arsitektur Transformer menggunakan mekanisme self-attention untuk memproses seluruh data sekuensial secara paralel tanpa batasan jarak konteks."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 18,
"completion_tokens": 28,
"total_tokens": 46
},
"modelin": {
"multiplier": 10.0,
"consumed_tokens": 460,
"remaining_token_balance": 24540000
}
}Daftar Kode Error Umum
invalid_request_errorFormat JSON salah atau parameter wajib (model, messages) tidak disertakan.
authentication_errorAPI key tidak valid, dicabut, atau tidak diawali dengan sk-modelin-.
insufficient_quotaKuota token akun Anda telah habis (0 Token). Beli paket baru di /katalog.
rate_limit_exceededPermintaan per menit (RPM) melebihi kapasitas paket Anda.
upstream_errorGagal menghubungi cluster AI upstream. Gateway otomatis mencoba failover.
Kalkulasi Kuota Token Universal
Pemotongan kuota token dihitung secara otomatis berdasarkan bobot model yang dipanggil:
Kuota Terpotong = (Prompt Tokens + Completion Tokens) × Bobot ModelModel Hemat (0.2x Multiplier)
Saat memanggil Gemini 2.5 Flash, Anda hanya menggunakan 0.2 token kuota per 1 token riil. Ini artinya paket 50M token Anda otomatis setara dengan 250 Juta Token!
Model Flagship (10.0x Multiplier)
Saat memanggil Claude Sonnet 4.6 atau Claude Opus Thinking, kuota dipotong 10x sesuai biaya komputasi aslinya tanpa perlu top-up akun terpisah.