API Reference
Base URL: https://api.nexotao.com. Autentikasi lewat API key — lihat
Autentikasi.
Endpoint
| Method | Path | Fungsi |
|---|---|---|
GET | /models | Katalog harga publik untuk situs (tanpa key) |
GET | /v1/models | Daftar model format OpenAI (butuh key) — dipakai n8n dsb. |
GET | /v1/models/{id} | Detail satu model format OpenAI (butuh key) |
POST | /v1/chat/completions | Chat format OpenAI (DeepSeek dan Claude) |
POST | /v1/responses | Format OpenAI Responses — mendukung streaming; dipakai Codex CLI |
POST | /v1/messages | Chat format Anthropic (model Claude) |
Header respons
| Header | Arti |
|---|---|
X-Request-Id | Id permintaan untuk pelacakan. Ada di semua respons, termasuk streaming |
X-Cost-Rp | Biaya aktual permintaan dalam Rupiah. Hanya pada respons non-streaming |
X-Error-Code | Nilai code dari body error. Hanya pada respons error |
Pada respons streaming (SSE), X-Cost-Rp tidak dikirim — biayanya belum
diketahui saat header di-flush. Ambil angka final dari GET /usage/{request_id};
lihat Penagihan & Harga.
Kode error
| Status | Arti | Tindakan |
|---|---|---|
400 | Permintaan tidak valid | Periksa body/parameter |
401 | API key salah atau dicabut | Buat / pakai key yang aktif |
402 | Saldo kurang | Top-up saldo Rupiah |
413 | Body permintaan terlalu besar | Kompaksi riwayat atau mulai sesi baru |
429 | Terlalu banyak permintaan | Coba lagi dengan backoff |
502 | Upstream tidak tersedia | Coba lagi dengan backoff |
Bentuk body error
Semua error mengembalikan JSON dengan bentuk yang sama:
{
"error": "invalid api key",
"code": "auth.api_key_invalid",
"type": "api_key_invalid",
"request_id": "8997bda3-65c4-45c3-ab38-c909f905fc4d",
"retryable": false
}| Field | Tipe | Arti |
|---|---|---|
error | string | Pesan yang bisa dibaca manusia. Teksnya bisa berubah — jangan dipakai untuk logika |
code | string | Identifier stabil bertitik, mis. auth.api_key_invalid. Ini yang dipakai program |
type | string | Segmen setelah titik terakhir pada code (mis. api_key_invalid). Kompatibilitas klien lama |
request_id | string | Id permintaan, sama dengan header X-Request-Id. Sertakan saat melapor |
retryable | bool | true bila mengulang permintaan yang sama masuk akal (mis. rate limit, error upstream) |
hint | string | Opsional. Muncul hanya pada sebagian error, berisi saran tindakan |
Cabangkan program pada code (atau header X-Error-Code), bukan pada error.
Daftar lengkap kode ada di Kode Error.
GET /models
Mengembalikan daftar model aktif beserta harga jual (tanpa data biaya internal). Dipakai oleh tabel harga live di halaman Penagihan dan Model & Harga.
curl https://api.nexotao.com/modelsSetiap item memuat: model, display_name, tier, provider, supports_vision,
modality, dan kolom harga *_micro (micro-rupiah; 1 Rp = 1.000.000 micro).