Jev API request schema
Every first-party Jev request is the same three top-level fields on POST https://api.typesafe.ai/v1/systemone. This page is the request half of the API shape. Confirm types on docs.typesafe.ai/api.
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.
Top-level fields
| Field | Required | Allowed shapes | Failure if wrong |
|---|---|---|---|
state |
yes | string; JSON object; array of text | 422; also accuracy loss if you dump unrelated fields (jev-1.13 jaggedness) |
model |
yes | alias or versioned id | 422 if omitted; “unknown model” if the door rejects the string |
questions |
yes | object, ≥1 entry | 422 |
English is the primary training language (models page). Pre-process images/audio/video to text before state. Vendor-claimed context: 64k tokens for state + all questions; 32k for state + the longest question. Unused keys still meter as input (vendor claim: $0.042 / million input tokens, output free).
jev-latest and jev-preview currently resolve to jev-1.13.0 — confirm. Pin the versioned id once floors exist.
Question object
Shared:
| Field | Required | Notes |
|---|---|---|
type |
yes | noul, choice, or score (lowercase in HTTP examples) |
instructions |
yes | string or object or array. Point at nested state with backtick paths: `ticket.body` |
criteria |
Choice/Score yes; Noul optional | Must align with instructions (jaggedness: contradictory true/false labels hurt) |
Choice criteria: { "billing": "Payments…", "other": "None of the above" } — max 255 keys, unordered; values may be null if no extra gloss.
Score criteria: ["Calm", "Frustrated", "Very angry"] — 2–10 descriptive levels, not raw numbers you later interpolate (official warning).
Noul criteria: { "true": "…", "false": "…" }. Noul answers return noul only.
The map key ("department") is your code id. TypeSafe: it is not used in inference.
Structured instructions (official pattern)
{
"state": { "resume": "…" },
"model": "jev-1.13.0",
"questions": {
"same_person": {
"type": "noul",
"instructions": {
"potential_duplicate": {
"name": "John Smith",
"location": "Oakland, California"
},
"question": "Is the resume for the same person as `potential_duplicate`?"
}
}
}
}
Pin jev-1.13.0 in production once thresholds exist. jev-latest is the docs default and can move. Unpatched jev-1.13 is a different string than the versioned id — see decision endpoint.
Minimal valid bodies
Noul only (quick start):
{
"state": "Help! My payouts have been failing for 3 days.",
"model": "jev-latest",
"questions": {
"is_urgent": {
"type": "noul",
"instructions": "Does this convey urgency?"
}
}
}
Gateway/OpenRouter/Workers AI may wrap or rename fields (boolean, input). Those are not this schema. Compare channels. Documented HTTP errors: 401, 422, 429, 529. Official SDKs retry 429/529.
See also
- API hub — first-party POST
- Request format — practitioner body notes
- Response shape — outbound field map
- Decision endpoint — naming still maps to
/v1/systemone
FAQ
Can instructions reference criteria keys?
Write the question so a person could answer in seconds. Put contrast in criteria. Do not hide a second judgment in one string.
Array state?
Yes — official state docs allow an array of text (for example chat turns). Still filter distractors.
Is there a free metadata object?
No. Identifiers the question needs live in state and are billed as input.
Will extra questions change sibling answers?
Questions are independent. Extra state can still distract jev-1.13.
What this page does not claim
- Official TypeSafe status, logos, or support.
- That jev.pro sells, issues, or proxies API keys.
- Extra first-party HTTP routes beyond
POST /v1/systemoneandGET /v1/modelsunless the API reference lists them. - Invented latency SLOs, search volume, or unofficial prices.
- That a schema-constrained answer is automatically factually correct.
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.