Errors · Last updated

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)

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.

Sources