API · Last updated

Jev response format

The Jev response format is the JSON body of a successful evaluation on POST https://api.typesafe.ai/v1/systemone. It echoes a resolved model id, an answers map keyed like your questions, and usage. The HTTP envelope is JSON because HTTP APIs use JSON — the model is not being asked to author that document as a completion. Failures use status + a JSON error body, not this envelope.

This page is for builders wiring TypeSafe Jev (System One) into agents, routing, or evals. jev.pro is an independent unofficial field guide — not affiliated with TypeSafe AI. We do not sell or issue keys. Confirm shapes on docs.typesafe.ai/api.

Successful body

{
  "model": "jev-1.13.0",
  "answers": {
    "is_urgent": { "type": "noul", "noul": 0.95 }
  },
  "usage": { "input_tokens": 296, "output_tokens": 20 }
}

answers is complete for the questions you sent. There is no cursor of leftover options — pagination, if you need it, is over your rows. The response Content-Type is JSON, matching the request; see content types if you expected NDJSON streams or multipart parts.

Answer variants

Noul: type, noul. No confidence. 0 = no, 1 = yes.

Choice: type, choice, probabilities, confidence.

Score: type, score, legend, probabilities, confidence.

The official quick-start sample (Stripe ticket) shows department.choice = "technical", frustration.score = 1.0, is_urgent.noul = 1.0. Those values are their illustration for that state, not a benchmark. Question ids are echoed as keys; they were not sent to the model.

The official confidence page describes confidence as derived from the Choice/Score distribution. You may ignore that field and compute another statistic from probabilities. Do not read .confidence on a Noul.

Usage

Billable quantity is input tokens on the public price list (vendor claim: $0.042 / million input tokens, output free). Log both input and output for debugging; do not assume output is charged. SDKs also expose convenience maps such as response.nouls in Python. HTTP clients should read answers.

Production notes

See also

FAQ

Why is model a versioned id when I sent an alias?

Aliases resolve. Log the id you actually got.

Where is the rationale field?

There isn’t one. Persist the distribution — explain pattern.

If I json.loads a completion after a Jev call?

You are on the wrong endpoint. See vs JSON mode.

Does usage appear on 422?

Do not assume it. Meter from successful calls and the vendor invoice.

What this page does not claim

Disclaimer

This is an independent unofficial site and is not affiliated with TypeSafe AI; official documentation is available at https://docs.typesafe.ai. Never treat jev.pro as TypeSafe official documentation. We do not sell, issue, or proxy API keys.

Sources