Jev invalid input errors
Symptom: the HTTP call never returns answers. You see 422 Unprocessable Entity (TypeSafe’s documented validation failure) or a gateway 400-class “invalid request.”
Jev did not “decide wrong.” The body failed the door’s schema. This unofficial tree is for operators. Canonical table: docs.typesafe.ai/api (401 / 422 / 429 / 529). We do not sell keys.
Decision tree
Did you get JSON answers?
├─ yes → not this page. Look at confidence / Noul, not HTTP.
└─ no
├─ 401 → unauthorized page
├─ 429 / 529 → back off (SDK default)
├─ 402 / customer_verification → marketplace callout below
└─ 422 or 400
├─ missing model, state, or questions → add required fields
├─ unknown / door-wrong model string → see version gotcha
├─ Choice >255 options or Score not 2–10 → shrink criteria
├─ type not noul|choice|score (or boolean on the wrong door) → fix type
└─ criteria vs instructions inverted → 422 or silent bad answers
Read the JSON body. TypeSafe says 422 names the offending field. Do not retry 422 in a loop.
First-party fixes
| Body smell | Fix |
|---|---|
No model |
jev-latest or pin jev-1.13.0 |
Empty questions |
At least one typed question |
type: "boolean" on api.typesafe.ai |
Use noul |
jev-1.13 rejected |
Try jev-1.13.0 or an alias on this host |
Image in state |
Not accepted — transcribe first |
| Huge distractor JSON | Filter; unused tokens still bill and jev-1.13 loses accuracy |
Application-level “invalid input” (low confidence, policy miss) is your enum, not an HTTP code.
Channel callouts (not a cloned error tree)
- OpenRouter 402 — insufficient credits on their ledger. Top up there. Not a TypeSafe 422.
- Vercel “customer verification required” — account/KYC on Vercel, not a Jev criterion bug.
- Gateway 400 with
modelType/ evaluation errors — you hit a chat compatibility path or the wrong model id (typesafe-ai/jev). See serverless channel.
Field-named 422 — do not retry
Symptom: HTTP 422, JSON names questions.severity.criteria (or model, state, questions.ID.type).
Cause: the first-party door rejected a structural field. Typical: Score criteria not a 2–10 list; Choice not a map or >255 options; Noul type misspelled; state is an image.
Fix: edit the named field. Official SDKs retry 429/529 only. A retry loop on 422 will not grow a Score from 1 level to 2. After the body is valid, pin jev-1.13.0 so aliases do not move under you.
Door-wrong strings (boolean vs noul, jev-1.13 vs jev-1.13.0, typesafe-ai/jev) are schema mismatch. Auth failures are 401 — we do not issue keys.
POST https://api.typesafe.ai/v1/systemone. Request shape: request schema. Envelope: error envelope. Vendor input price $0.042 / M (claim) still applies to oversized state that does validate.
If the field name in the 422 body is a question id you do not recognize, you POSTed a stale questions map. Diff the client against the frozen contract before you “just add other.” Adding other to a Choice is a product change; it is not a retry.
FAQ
Is 400 documented by TypeSafe? The API reference we cite lists 401, 422, 429, 529. Treat other codes as door-specific.
Can invalid criteria return 200 with a confident wrong choice? Yes. Validation is structural. Alignment is on you (jaggedness).
Should I retry 422 with backoff? No. Fix the named field. Retry is for 429/529.
Missing confidence on a Noul — is that 422?
No. Noul has no confidence. That is a client assumption, not invalid input.
Hub: Errors. Siblings: schema mismatch, error envelope.
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.