NesaRouterDokumentasi API

Reference

API reference

Subset OpenAI-compatible yang dipakai klien Cursor / SDK. Bukan OpenAPI generator penuh.

POST /v1/chat/completions

Body JSON seperti OpenAI Chat Completions. Field penting: model, messages, stream (opsional).

request body
{
  "model": "nesarouter/step-3.7-flash-free",
  "messages": [
    {"role": "system", "content": "You are helpful."},
    {"role": "user", "content": "Halo"}
  ],
  "stream": false
}

Response non-stream: objek chat.completion. Field model di response menggemakan id publik katalog (nesarouter/…).

GET /v1/models

Daftar model gratis dan premium yang aktif untuk akun Anda (format OpenAI list). Cocok untuk picker di Cursor.

curl
curl https://nesarouter.com/v1/models \
  -H "Authorization: Bearer nesa_<client_key_anda>"

Streaming (SSE)

Set "stream": true. Response text/event-stream dengan chunk OpenAI-compatible. Id model di SSE diganti ke id publik facade.

curl
curl https://nesarouter.com/v1/chat/completions \
  -H "Authorization: Bearer nesa_<client_key_anda>" \
  -H "Content-Type: application/json" \
  -N \
  -d '{
    "model": "nesarouter/step-3.7-flash-free",
    "messages": [{"role": "user", "content": "Halo"}],
    "stream": true
  }'

Header penting

HeaderKeterangan
AuthorizationBearer nesa_…
Content-Typeapplication/json
x-nesa-request-idDikembalikan pada respons (termasuk error SaaS). Cantumkan saat hubungi ops.
Retry-AfterDetik menunggu ulang pada 429 / beberapa 503.

Error shape: { "error": { "message": "…" } }. Lihat Errors.