API docs

The TypeSafe System One contract, with explicit routing.

Text decisions

curl https://jev-router.com/v1/systemone \
  -H "Authorization: Bearer jvr_…" \
  -H "Content-Type: application/json" \
  -d '{"model":"classifier-fast","state":"Mia owns a red bicycle.","questions":{"color":{"type":"choice","instructions":"What color?","criteria":{"red":null,"blue":null}}}}' 

Multimodal decisions

POST /v1/multimodal with the same body plus up to 4 data:image/png;base64,… values in images. Only image-capable models are accepted.

Fallbacks

{
  "model": "djev",
  "fallback": [
    "decider-2b-vision"
  ],
  "state": "\u2026",
  "images": [
    "data:image/webp;base64,\u2026"
  ],
  "questions": {
    "decision": {
      "type": "choice",
      "criteria": {
        "a": null,
        "b": null
      }
    }
  }
}

Python

import requests
requests.post("https://jev-router.com/v1/systemone", headers={"Authorization":"Bearer jvr_…"}, json={...}).json()

JavaScript

await fetch("https://jev-router.com/v1/systemone", {method:"POST", headers:{Authorization:"Bearer jvr_…","Content-Type":"application/json"}, body:JSON.stringify(payload)})

OpenAI-compatible convenience

POST /v1/chat/completions accepts model and a final user message containing a JSON System One request. It is a convenience adapter; the native route is canonical.