Decisions API

Jev on OpenRouter: Structured Classification & the Decisions API

Provider claimsLast verified: September 29, 2026Pin: typesafe/jev-1.13

Jev on OpenRouter is TypeSafe's System One decision model, called with a state and typed questions. Classification goes through the Decisions API. It does not go through chat completions. Jev Router is a separate listing.

Quick Answer

OpenRouter currently lists three TypeSafe entries: pinned Jev 1.13 (typesafe/jev-1.13), the alias ~typesafe/jev-latest, and Jev Router (typesafe/jev-router). Use Jev 1.13 for routing labels, triage, and approval gates. It is a poor fit for writing code, long articles, or open-ended answers. An OpenRouter key is enough. You do not need a separate TypeSafe account for this path.

Which Jev models are on OpenRouter?

Checked September 29, 2026 against openrouter.ai/typesafe and the public endpoints API. The default GET /api/v1/models catalog included Jev Router and did not include Jev 1.13. The decision model is on its own model page and endpoints URL.

ListingRoleChecked September 29, 2026
Jev 1.13
typesafe/jev-1.13
Pinned decision model. Prefer this when you calibrate a gate.Context 32,000. Input $0.042 / 1M. Output $0. Provider endpoint typesafe/jev-1.13-20260917.
Jev Latest
~typesafe/jev-latest
Alias. OpenRouter says it redirects to the newest model in the Jev family.The endpoints API returned no provider row, so this page does not copy a price or a context length onto the alias.
Jev Router
typesafe/jev-router
Selects a chat model and a reasoning effort.Context 1,000,000 on the router listing. Do not merge its docs with the Decisions API.

TypeSafe's own models page lists jev-1.13.0 at the same input price, with a larger direct-API window: 64,000 tokens per request, and 32,000 for the state plus the longest question. Gateway context and direct context are different numbers. Quote the one for the path you call.

Decisions API vs chat completions

A decision call sends state plus named questions. Each question is a Noul (yes or no probability), a Choice (one of your options, with a probability for each), or a Score (a position on your rubric). Jev 1.13 does not write the reply. Your code reads the probabilities and applies a cutoff.

OpenRouter documents two surfaces, both billed to the same OpenRouter key:

  • Decisions API: POST https://openrouter.ai/api/alpha/decisions. Use this from HTTP or the OpenRouter SDKs. The Jev tutorial is the official walkthrough.
  • System One API: POST https://openrouter.ai/api/v1/systemone. Point an existing TypeSafe SDK at https://openrouter.ai/api. Model id jev-1.13 is routed as typesafe/jev-1.13. See OpenRouter's TypeSafe SDK note.

The Jev 1.13 model page says chat-completions SDKs will not work with it. Chat completions are the shape for Jev Router, not for this model.

Shortest Decisions shape, with the key left in the environment:

curl https://openrouter.ai/api/alpha/decisions \
  -H "Authorization: Bearer $OPENROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "typesafe/jev-1.13",
    "state": "Checkout shows a blank page after Pay.",
    "questions": {
      "is_bug": {
        "type": "noul",
        "instructions": "Is the customer reporting a software defect?"
      }
    }
  }'

Question criteria, response fields, and SDK samples stay in the OpenRouter Jev docs and TypeSafe's System One concept. The lab export at /docs shows one pinned gate. It is not a general Decisions client.

The 27% classification claim

OpenRouter stated on September 26, 2026 that Jev took 27% of weekly request volume in the classification category, nearly twice the share of DeepSeek V4 Flash, which had held the top spot. Treat that as a platform claim about classification requests. It is not a JevLab measurement, and the post does not name Jev Router.

Source: OpenRouter, September 26, 2026. The category is classification request volume on OpenRouter. It is not token share across every model, and it is not a measurement of typesafe/jev-router.

OpenRouter also published its own Banking77 comparison on September 22, 2026: Jev 1.13 at 81.0% accuracy and Claude Opus 5 at 84.4% on 3,080 utterances, with Jev faster and cheaper in that run. That writeup is OpenRouter's measurement. JevLab's lab is a five-label routing cutoff on a candidate fixture. It is not that dataset, and no reviewed accuracy is claimed here.

Production tips for a classification gate

  • Pin jev-1.13.0 on TypeSafe, or typesafe/jev-1.13 on OpenRouter. Aliases move, and a cutoff is calibrated to one score distribution.
  • Read Choice and Score confidence as a gate, not as accuracy. The three-band threshold guide separates auto-adopt, a second look, and handoff.
  • A schema-valid label can still be the wrong label. Schema determinism is not factual truth.
  • On timeout, HTTP 429, or HTTP 529, fail closed. Key handling and the documented limits are on Jev API access.

Sources checked on September 29, 2026

Frequently Asked Questions

How do I call Jev on OpenRouter?

Send state and typed questions to POST https://openrouter.ai/api/alpha/decisions with model typesafe/jev-1.13 and an OpenRouter API key. If you already use the TypeSafe SDK, OpenRouter documents pointing it at base URL https://openrouter.ai/api, which calls POST https://openrouter.ai/api/v1/systemone. Keep the key on the server.

What is the Decisions API?

The Decisions API accepts a state and one or more typed questions. Jev answers each question with a Noul probability, a Choice among options you define, or a Score on a rubric you define. The response is structured decisions and probabilities, not generated prose.

Can I use chat completions with Jev 1.13?

No. OpenRouter's Jev 1.13 model page says the model runs on the Decisions API rather than the OpenAI-compatible chat endpoint, and that chat-completions SDKs will not work with it. Chat completions are how you call Jev Router (typesafe/jev-router), which is a different product.

How is Jev Router different from Jev 1.13 on OpenRouter?

Jev Router (typesafe/jev-router) selects a model and a reasoning effort and returns text. Jev 1.13 (typesafe/jev-1.13) returns typed decisions. ~typesafe/jev-latest is an alias OpenRouter describes as redirecting to the newest Jev family model. On September 29, 2026 the public endpoints API returned no priced provider row for that alias.

How much does Jev 1.13 cost on OpenRouter?

OpenRouter's endpoints API listed typesafe/jev-1.13 at $0.042 per 1 million input tokens and $0 per 1 million output tokens, with a 32,000 token context, on September 29, 2026. The provider endpoint name was typesafe/jev-1.13-20260917. TypeSafe's own models page lists the same input price for jev-1.13.0 and says output tokens are free. Recheck both pages before you budget.

Threshold on a pinned model

See what a cutoff does to a five-label route

After the Decisions call returns a probability, the remaining work is your policy. The lab shows auto-adopt and handoff on one fixture. The 0.80 slider position is the interaction default, not a production recommendation.

Disclaimer: JevLab is an independent laboratory. It is not affiliated with TypeSafe or OpenRouter. Prices, signup status, context lengths, and rate limits on this page are provider claims checked on September 29, 2026. Recheck the linked official pages before you depend on them.