Pricing Docs Models FAQ About Status Contact Get an API key →

PlusAPI — API docs

An OpenAI-compatible endpoint for AEON, our own 27B model. If your code already talks to OpenAI, you change one line.

Quickstart

Get a key from pricing, then point any OpenAI SDK at our base URL.

from openai import OpenAI

client = OpenAI(
    base_url="https://plusapi.ai/v1",
    api_key="sk-plusapi-…",
)

r = client.chat.completions.create(
    model="aeon-27b",
    messages=[{"role": "user", "content": "Hello!"}],
)
print(r.choices[0].message.content)
import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://plusapi.ai/v1",
  apiKey: "sk-plusapi-…",
});

const r = await client.chat.completions.create({
  model: "aeon-27b",
  messages: [{ role: "user", content: "Hello!" }],
});
console.log(r.choices[0].message.content);
curl https://plusapi.ai/v1/chat/completions \
  -H "Authorization: Bearer sk-plusapi-…" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "aeon-27b",
    "messages": [{"role":"user","content":"Hello!"}]
  }'

Authentication

Every request carries your key as a bearer token:

Authorization: Bearer sk-plusapi-…
Your key is your account. There is no login, no dashboard password, no identity attached — we store only a hash of it. Keep it safe: lose it and it can't be recovered, because we don't know who you are.

Base URL & model

Base URLhttps://plusapi.ai/v1
Modelaeon-27b
ProtocolOpenAI Chat Completions (drop-in)

Only the AEON model is served, so the model field is optional — any value routes to it.

Chat completions

POST /v1/chat/completions — identical shape to OpenAI. Response includes a usage object with token counts (that's what you're billed on).

{
  "id": "chatcmpl-…",
  "choices": [{ "message": { "role": "assistant", "content": "…" },
                "finish_reason": "stop" }],
  "usage": { "prompt_tokens": 25, "completion_tokens": 42, "total_tokens": 67 }
}

Streaming

Set "stream": true for server-sent events, exactly like OpenAI. Token usage arrives in the final chunk.

stream = client.chat.completions.create(
    model="aeon-27b", stream=True,
    messages=[{"role":"user","content":"Tell me a story."}],
)
for chunk in stream:
    print(chunk.choices[0].delta.content or "", end="")

List models

curl https://plusapi.ai/v1/models \
  -H "Authorization: Bearer sk-plusapi-…"

Supported parameters

ParameterNotes
messagesRequired. Standard role/content array.
max_tokensOutput cap. Bounded by your plan's context.
temperature0–2. Default 1.
top_pNucleus sampling.
streamtrue for SSE.
stopStop sequences.

Rate limits

Each plan sets a max parallel requests and a requests-per-minute ceiling. Exceeding either returns 429; retry with backoff.

PlanParallelRateContextMonthly (fair use)
Free140 / min16K100 requests
Pro4200 / min32K25M tokens
Business8400 / min64K45M tokens
Dedicated~25customcustomunmetered

Errors

Errors return an OpenAI-style JSON body: { "error": { "type", "message" } }.

CodeMeaning
401Missing or invalid API key
402Key expired, or free trial used up
403Key disabled
429Concurrency or rate limit hit
400Malformed request or blocked content
502Upstream model unavailable — retry

Billing

Pay with crypto (Bitcoin, Monero, USDT) or card. Subscriptions are a flat monthly plan with a generous monthly token allowance (fair use). No card is stored for crypto, and there are no chargebacks or freezes.

Requests that violate our Acceptable Use Policy — for example, content sexualizing minors — are blocked and return 400.