OpenAI-compatible API untuk workflow kamu
Credential, paket token, usage, dan payment dikelola dari satu Dashboard API. Raw token hanya ditampilkan saat register atau rotasi.
Base URL
https://api.produkdigitalpalinglaris.web.id/api/v1
API Token
YOUR_API_TOKEN
Rate limit
60 req/menit
01 · API DOCS
Mulai Cepat
Contoh pemakaian API dalam beberapa bahasa. Ganti YOUR_API_TOKEN dengan credential dari Dashboard API.
cURL — Chat Completions
curl -X POST https://api.produkdigitalpalinglaris.web.id/api/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
"model": "auto",
"messages": [{"role":"user","content":"Halo, apa kabar?"}]
}'Python — OpenAI SDK
from openai import OpenAI
client = OpenAI(
base_url="https://api.produkdigitalpalinglaris.web.id/api/v1",
api_key="YOUR_API_TOKEN"
)
response = client.chat.completions.create(
model="auto",
messages=[{"role": "user", "content": "Halo!"}]
)
print(response.choices[0].message.content)Node.js — OpenAI SDK
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.produkdigitalpalinglaris.web.id/api/v1",
apiKey: "YOUR_API_TOKEN"
});
const response = await client.chat.completions.create({
model: "auto",
messages: [{ role: "user", content: "Halo!" }]
});
console.log(response.choices[0].message.content);Go — HTTP
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
body := []byte(`{"model":"auto","messages":[{"role":"user","content":"Halo!"}]}`)
req, _ := http.NewRequest("POST", "https://api.produkdigitalpalinglaris.web.id/api/v1/chat/completions", bytes.NewBuffer(body))
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
data, _ := io.ReadAll(res.Body)
fmt.Println(string(data))
}02 · API DOCS
Overview
Gateway memvalidasi credential, account, entitlement, model, rate limit, dan quota sebelum request diteruskan ke provider.
Credential
Bearer token diverifikasi dari hash dan dapat direvoke kapan saja.
Metering
Input token, output token, latency, provider, dan status request dicatat.
Quota
Token didebit dari entitlement aktif melalui ledger append-only.
03 · API DOCS
Models
Model yang dapat dipakai mengikuti provider aktif dan entitlement account.
curl https://api.produkdigitalpalinglaris.web.id/api/v1/models \
-H "Authorization: Bearer YOUR_API_TOKEN"Katalog publik juga tersedia di halaman Model AI dan Top Model.
04 · API DOCS
Chat Completions
Gunakan model auto atau model ID yang tersedia dari endpoint models.
POST https://api.produkdigitalpalinglaris.web.id/api/v1/chat/completions
Authorization: Bearer YOUR_API_TOKEN
Content-Type: application/json
{
"model": "auto",
"messages": [{"role": "user", "content": "Jelaskan API PDPL"}],
"stream": false
}Streaming belum tersedia pada gateway saat ini. Gunakan stream: false.
05 · API DOCS
Usage & Quota
Usage tersedia di Dashboard API dan bersumber langsung dari event gateway.
Cek usage
Buka Dashboard API → Usage untuk request, total token, input/output, HTTP status, dan latency.
Buka UsageAktifkan quota
Buat invoice dan payment paket dari Dashboard API → Billing. Quota aktif setelah verifikasi.
Buka Billing06 · API DOCS
Integrations
Gunakan base URL yang sama pada tool OpenAI-compatible.
OpenAI SDK
Python dan Node.js dapat langsung memakai contoh pada bagian Mulai Cepat dengan base URL API PDPL.
OpenCode / custom gateway
{
"provider": {
"pdpl": {
"npm": "@ai-sdk/openai-compatible",
"options": {
"baseURL": "https://api.produkdigitalpalinglaris.web.id/api/v1",
"apiKey": "YOUR_API_TOKEN"
},
"models": { "auto": { "name": "auto" } }
}
},
"model": "pdpl/auto"
}07 · API DOCS
Errors
Error dikembalikan dalam format JSON yang konsisten.
{
"error": {
"type": "quota_exceeded",
"code": "quota_exceeded",
"message": "Quota token API tidak mencukupi."
}
}401 — credential invalid/revoked.
402 — quota atau entitlement tidak aktif.
422 — payload request tidak valid.
429 — rate limit tercapai.
Jaga credential kamu
Jangan commit API Token ke repository. Jika token bocor, segera lakukan rotasi dari Dashboard API → API Access.