Documentation

Drop-in. One endpoint.

Iudex Route speaks the OpenAI chat-completions protocol. If your code already talks to GPT, the only thing that changes is the base URL.

Quickstart

Sign up, generate a key in Dashboard → API keys, then point the OpenAI Python client at us.

from openai import OpenAI

client = OpenAI(
    base_url="https://api.acbm.ai/v1",
    api_key="acbm_…",
)

resp = client.chat.completions.create(
    model="auto",
    messages=[{"role": "user", "content": "Summarize the EU AI Act in 3 bullets."}],
)
print(resp.choices[0].message.content)

Authentication

All requests use a Bearer token:Authorization: Bearer acbm_…Keys are sha256-hashed at rest and the full key is shown to you exactly once at create time.

Chat completions

The request body is OpenAI-compatible. Two Iudex Route-specific fields:

  • model: "auto" — let the router pick the tier. Recommended.
  • domain_tag: "code" | "math" | … — optional hint that helps the difficulty estimator calibrate.

The response adds an acbm envelope with the picked tier, the difficulty score, and the actual cost:

{
  "id": "chatcmpl_…",
  "model": "claude-sonnet-4-6",
  "choices": [...],
  "usage": { "prompt_tokens": 412, "completion_tokens": 188 },
  "acbm": {
    "tier": "T3",
    "difficulty_score": 0.72,
    "difficulty_category": "hard",
    "provider": "anthropic",
    "verification_depth": "shallow",
    "cost_usd": 0.0041
  }
}

Model tiers

Five tiers, picked by difficulty. You can pin a tier by passing acbm/t3 etc.

TierModelsCost / query
T0cache · templated~$0
T1gpt-4o-mini · claude-haiku$0.01–0.05
T2gpt-4o · gemini-flash$0.05–0.30
T3claude-sonnet · gemini-pro · gpt-4o$0.30–2.00
T4claude-opus · o3$2.00–15.00

Python SDK

Optional thin wrapper:

pip install acbm

from acbm import ACBM
client = ACBM(api_key="acbm_…")     # or set ACBM_API_KEY
resp = client.chat("Summarize the EU AI Act in 3 bullets.")
print(resp.text)
print(resp.tier, resp.cost_usd, resp.difficulty_score)

Errors & limits

  • 401 — invalid or revoked key.
  • 402 — monthly quota exhausted. Upgrade plan or wait for reset.
  • 429 — short-burst rate limit. Backoff and retry.
  • 502 — upstream provider error. Iudex Route logs but does not charge for these.