Referensi API
Dokumentasi JriGPT API
Panduan lengkap untuk mengintegrasikan JriGPT-1 ke dalam aplikasi Anda. API ini menggunakan standar REST dengan format JSON.
Base URL
Semua permintaan API dikirimkan ke endpoint berikut:
https://api.jrigpt.fajriag.my.id/v1
Autentikasi
Sertakan API key Anda di header Authorization pada setiap permintaan. API key dibuat dari
akun JriGPT Anda.
Format Header
Authorization: Bearer jr-xxxxxxxxxxxxxxxx
POST/chat/completions
Chat Completions
Membuat respons model untuk percakapan yang diberikan. Ini adalah endpoint utama untuk semua interaksi teks dengan JriGPT-1.
Kapasitas Ekstra Besar: Endpoint ini mendukung hingga 163.840 token atau setara ~500.000 karakter (termasuk percakapan sebelumnya) dalam satu request.
Gunakan model ID
Gunakan model ID
jrigpt untuk mengakses model utama JriGPT.
Parameter Request
| Parameter | Tipe | Deskripsi |
|---|---|---|
| modelwajib | string | ID model. Gunakan jrigpt-1. |
| messageswajib | array | Daftar pesan. Setiap item memiliki role (system, user, assistant) dan content. |
| stream | boolean | Jika true, respons dikirim bertahap via SSE. Default: false. |
| temperature | number | Kontrol keacakan output. Antara 0–2. Default: 1. |
| max_tokens | integer | Batas maksimum token yang dihasilkan dalam satu respons. |
Format Respons
Setiap respons berhasil mengembalikan objek JSON dengan struktur berikut:
response.json
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"model": "jrigpt-1",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "REST API adalah antarmuka yang memungkinkan..."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 24,
"completion_tokens": 87,
"total_tokens": 111
}
}
Kode Error
JriGPT menggunakan kode status HTTP standar.
| Status | Arti |
|---|---|
200 | Berhasil |
400 | Request tidak valid — periksa format body JSON |
401 | API key tidak valid atau tidak disertakan |
402 | Saldo tidak mencukupi — lakukan top up terlebih dahulu |
403 | Akses Ditolak — Payload terlalu panjang (>500.000 karakter) atau melebihi 100 pesan |
429 | Rate Limit Exceeded — Batas wajar 30 request/menit terlewati |
500 | Server error — coba lagi beberapa saat |
Contoh Kode
cURL
request.sh
curl https://api.jrigpt.fajriag.my.id/v1/chat/completions \
-H "Authorization: Bearer jr-..." \
-H "Content-Type: application/json" \
-d '{
"model": "jrigpt-1",
"messages": [
{"role": "system", "content": "Kamu adalah asisten yang membantu."},
{"role": "user", "content": "Jelaskan apa itu REST API."}
]
}'
Python
request.py
import requests
resp = requests.post(
"https://api.jrigpt.fajriag.my.id/v1/chat/completions",
headers={
"Authorization": "Bearer jr-...",
"Content-Type": "application/json"
},
json={
"model": "jrigpt-1",
"messages": [
{"role": "user", "content": "Jelaskan apa itu REST API."}
]
}
)
print(resp.json()["choices"][0]["message"]["content"])
PHP
request.php
$ch = curl_init('https://api.jrigpt.fajriag.my.id/v1/chat/completions');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer jr-...',
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'model' => 'jrigpt-1',
'messages' => [['role' => 'user', 'content' => 'Jelaskan apa itu REST API.']],
]),
]);
$res = json_decode(curl_exec($ch), true);
echo $res['choices'][0]['message']['content'];
Daftar gratis untuk mendapatkan API key.