Reference
Jev Models
Jev currently has one release — Jev 1.13, id jev-1.13.0 — reachable under several names. This page lists every id and alias, the price and limits TypeSafe publishes, and exactly which ids each endpoint on jev-api.org accepts.
Updated
The model list
TypeSafe's docs describe one current model plus aliases that point at it. Price and rate limits below are TypeSafe's published figures for api.typesafe.ai; calls on jev-api.org are billed in credits instead.
| Model id | Points to | Price on TypeSafe | Rate limits on TypeSafe | Context |
|---|---|---|---|---|
| jev-1.13.0 | Jev 1.13 | $0.042 per million input tokens; output tokens free | 100K tokens/sec and 80 requests/sec, adjusting dynamically | 64k tokens per request; 32k for state plus the single longest question |
| jev-latest | jev-1.13.0 | Same underlying model | Same underlying model | Same underlying model |
Input to Jev is text only — a string, a JSON object, or an array of text. There is no image, audio, or video input.
Aliases
Aliases are names TypeSafe moves when a release ships. Today both resolve to Jev 1.13.
| Alias | Resolves to | Meaning |
|---|---|---|
| jev-latest | jev-1.13.0 | Most recent stable release. The SDK default. |
| jev-preview | jev-1.13.0 | Most recent release, official or not. No preview build exists right now, so it points at the stable release. |
Pin a version or follow the alias
Send a versioned id such as jev-1.13.0 when your code depends on one probability distribution — for example a Noul cutoff you tuned and a regression-tested threshold. The response model field always reports the versioned id that actually served the request, so you can log it.
Send jev-latest when you would rather track each release automatically. Aliases move when TypeSafe ships a new version, so an alias can change answers without any change on your side.
Which ids jev-api.org accepts
The two endpoints on this site accept different id sets:
- POST /api/v1/decisions — the simple endpoint — accepts jev-1.13 or jev-latest.
- POST /v1/systemone — the TypeSafe-compatible endpoint — accepts jev-latest, jev-preview, jev-1.13, jev-1.13.0 and typesafe/jev-1.13.
GET /v1/models needs no key and lists the models this site serves. The same response shape works with the TypeSafe SDK's models.list().
$ curl https://jev-api.org/v1/models
{
"models": [
{
"name": "jev-latest",
"description": "Alias for jev-1.13.0, the current Jev release on jev-api.org.",
"release_date": "2026-09-15"
},
{
"name": "jev-1.13.0",
"description": "Jev 1.13, TypeSafe AI's System One decision model.",
"release_date": "2026-09-15"
}
]
}Known jaggedness of Jev 1.13
Jev 1.13 reads literally, is weak at arithmetic and date math, can lean toward the first Choice option, and cannot generate text. TypeSafe's advice: keep math in code, filter large states, and reorder options to check consistency.
FAQ
What model id should I send?
jev-latest for tracking the current release; a versioned id when your thresholds are tuned against one version. On /v1/systemone the versioned id is jev-1.13.0; on /api/v1/decisions send jev-1.13.
Does jev-preview give me a newer model?
Not today. jev-preview means the most recent release, official or not, and no preview build exists right now — it resolves to jev-1.13.0.
Why does the response say jev-1.13.0 when I sent jev-latest?
The model field always reports the versioned id that served the request. Aliases are resolved before the model runs, so the answer tells you exactly which version decided.
Is there a way to list models without a key?
Yes. GET https://jev-api.org/v1/models returns the served models and needs no authentication. The SDK's client.models.list() reads it.
Send the first decision
Open the playground with a sample request, or read the docs and call the endpoint with your own key.